如何保存当前选定的微调器值,这样当我重新打开应用程序时,默认情况下会自动选择保存的值?
答案 0 :(得分:3)
请在微调器的onItemSelectedListener()
上写下以下代码,并将所选值存储到共享首选项中。
String mSpnValue=mSpinner1.getSelectedItem().toString();
SharedPreferences myPrefs = this.getSharedPreferences("myPrefs", MODE_WORLD_READABLE);
SharedPreferences.Editor prefsEditor = myPrefs.edit();
prefsEditor.putString("Value", mSpnValue);
在spinner中使用以下代码设置项目。
SharedPreferences myPrefs = this.getSharedPreferences("myPrefs", MODE_WORLD_READABLE);
String myString = myPrefs.getString("Value","nothing"); // the value you want the
ArrayAdapter<String> myAdap = (ArrayAdapter<String>) mSpinner1.getAdapter();
int spinnerPosition = myAdap.getPosition(myString);
// set the default according to value
mSpinner1.setSelection(spinnerPosition);
答案 1 :(得分:1)
您可以在首选项中保存微调器位置,并在使用spinner.setSelection(position_from_preferences);
答案 2 :(得分:0)
您可以使用多种方法
例如,您可以使用数据库并保存它。
其他方法和最好的IMO使用SharedPreferences http://developer.android.com/intl/es/reference/android/content/SharedPreferences.html
http://developer.android.com/intl/es/reference/android/app/backup/SharedPreferencesBackupHelper.html
答案 3 :(得分:0)
对于设定值,另一种方式:---
for(int i=0;i<adapter.getCount();i++){
if(adapter.getItem(i).equals(your save preference value){
spinner_timer.setSelection(i);
}
}
答案 4 :(得分:0)
您还可以按位置引用微调器值。这样你只需直接处理ints
:
SharedPreferences settings = getSharedPreferences("MYPREFS", 0);
SharedPreferences.Editor editor = settings.edit();
editor.putInt("VALUE", spinner.getSelectedItemPosition());
editor.commit();
并加载:
spinner.setSelection(settings.getInt("VALUE", 0));