有没有可能在不调用
基本上我想做的是回到微调器中先前选择的项目,因为其中一个在被选中时显示对话框。当用户按下返回按钮时,微调器仍然显示他们选择了显示对话框的位置。
那么有没有办法在使用
onItemSelected
方法的情况下更改所选的微调器位置?基本上我想做的是回到微调器中先前选择的项目,因为其中一个在被选中时显示对话框。当用户按下返回按钮时,微调器仍然显示他们选择了显示对话框的位置。
那么有没有办法在使用
spinner.setSelection(position)
还原时阻止其被调用,或者有没有办法使显示对话框的位置不再保持选中状态?public void onItemSelected(AdapterView<?> arg0, View arg1, int arg2,long arg3) {
switch(arg2){
case 0:
previousSelection = 1;
mNavButtonClick.onNavButtonClick(1);
break;
case 1:
previousSelection = 2;
mNavButtonClick.onNavButtonClick(2);
break;
case 2:
previousSelection = 3;
mNavButtonClick.onNavButtonClick(3);
break;
case 3:
previousSelection = 4;
mNavButtonClick.onNavButtonClick(4);
break;
case 4:
previousSelection = 5;
mNavButtonClick.onNavButtonClick(5);
break;
case 5:
//this case shows the dialog
mNavButtonClick.onNavButtonClick(6);
break;
default:
break;
}
}
显示对话框后,用户点击“返回”按钮关闭对话框,在onDismiss
中调用
spinner.setSelection(previousSelection);
要回到先前的选择,但这会重新创建视图,而我不想这样做,因为我已经在视图中了,我只想在下拉框中显示我在视图中。
setSelection
没有太大区别。 - tyczj