所以现在我有一个有Spinner的活动。您可以从Spinner中选择多个选项。假设选项为Foo,Bar,FooBar
。
因此,用户选择Foo
,此时:
Spinner mySpinner= (Spinner) findViewById(R.id.mypinner);
adapter = new ArrayAdapter<String>(
this, android.R.layout.simple_spinner_item);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
getAllNames("dbtable");
mySpinner.setAdapter(adapter);
mySpinner.setOnItemSelectedListener(new SpinnerOnItemSelectedListener());
public class SpinnerOnItemSelectedListener implements OnItemSelectedListener {
public void onItemSelected(AdapterView<?> parent,
View view, int pos, long id) {
spinnerChoice= parent.getItemAtPosition(pos).toString();
}
public void onNothingSelected(AdapterView parent) {
// Do nothing.
}
}
现在,我使用spinnerChoice
来查询数据库,然后我返回了一个双倍的spinnerDouble
。
spinnerDouble
是Intent的额外内容,并显示在下一个屏幕上。如果用户点击物理后退按钮,并从微调器中选择一个新值,它仍将包含原始值,而不是新选择的值。
我该怎么做才能确保spinnerChoice
得到更新?