我正在尝试加载我的首选项并更新微调器,以显示先前保存的值。我以前从未使用过spinner.setSelection,并且总是得到nullpointerexceptions。
String[] timeItems = new String[] {"After 2 minutes", "After 5 minutes", "Never"};
ArrayAdapter<String> adapter;
Spinner screenSpinner;onCreate():
Spinner screenSpinner = (Spinner)findViewById(R.id.spinner_screen);
screenSpinner.setOnItemSelectedListener(new MyOnItemSelectedListener());
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
android.R.layout.simple_spinner_item, timeItems);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
screenSpinner.setAdapter(adapter);loadPrefs()
//load the preferences
...
//then update the selection in the spinner
if (mScreenTimer == SCREEN_TIMER_2MINUTES) {
int tmp_index = adapter.getPosition("After 2 minutes");
screenSpinner.setSelection(tmp_index,true);
} else if (mScreenTimer == SCREEN_TIMER_5MINUTES) {
int tmp_index = adapter.getPosition("After 5 minutes");
screenSpinner.setSelection(tmp_index,true);
} else if (mScreenTimer == SCREEN_TIMER_NEVER) {
int tmp_index = adapter.getPosition("Never");
screenSpinner.setSelection(tmp_index,true);
}我在screenSpinner.setSelection上获取NullPointerExecption (tmp_index,true)
发布于 2011-07-12 20:23:02
在设置适配器后尝试设置选择
https://stackoverflow.com/questions/6318648
复制相似问题