我有两个触发 onItemSelected 事件的微调器。问题是我怎么知道是哪一个触发了这样的事件?到目前为止,我尝试过:
public void onItemSelected(AdapterView<?> parent, View view, int position, long id)
{
Log.d("form","onitemselected");
switch (view.getId()) {
case R.id.region_spinner:
Region r = (Region)sregions.getSelectedItem();
Log.d("form","regionid:" + r.id);
break;
case R.id.state_spinner:
Log.d("form","state id:");
break;
}
但是只显示了第一个Log,所以在switch中没有匹配到。
最佳答案
使用:
switch(parent.getId()) {
...
}
反而是你需要的。
您参数中的 view
是实际的“行”(即微调器项的单击子项),而父项是您所追求的实际“微调器”。
关于android - 多个微调器和 onItemSelected,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5119196/