我有一个意图启动的活动,页面上有许多微调器。我刚刚按照本指南设置了微调器的 ItemSelected 侦听器。问题是,每个 Spinner 中的第一个项目基本上是“请选择”,所以它不是一个空白框:所以我的 ItemSelected 侦听器检测到请选择在微调器中的事实,并且似乎假设它被选中而不是加载默认。理想情况下,我希望听众只检测到何时做出了实际选择。忽略默认选择的最佳方法是什么?
以下是相关代码:
ageSpinner = (Spinner) findViewById(R.id.ageSpinner);
ageAdapter = ArrayAdapter.createFromResource
(this, R.array.ageArray, android.R.layout.simple_spinner_item);
ageAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
ageSpinner.setAdapter(ageAdapter);
ageSpinner.setOnItemSelectedListener(new MyOnItemSelectedListener());
public class MyOnItemSelectedListener implements OnItemSelectedListener {
public void onItemSelected(AdapterView<?> parent,
View view, int pos, long id) {
Toast.makeText(parent.getContext(), "The planet is " +
parent.getItemAtPosition(pos).toString(), Toast.LENGTH_LONG).show();
}
public void onNothingSelected(AdapterView parent) {
// Do nothing.
}
}