В следующем коде я настраиваю счетчик, слушаю и определяю выборки из счетчика.
Проблема в том, что я пытаюсь сохранить ранее выбранное значение, чтобы оно сохранялось между перезагрузками активности, но когдаЯ перезагружаю действие, ранее выбранное значение не установлено как значение счетчика.Код выглядит следующим образом:
final Spinner spinner = (Spinner)findViewById(R.id.Spinner_gender);
ArrayAdapter<?> adapter = ArrayAdapter.createFromResource(this, spinnerID, android.R.layout.simple_spinner_item);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner.setAdapter(adapter);
spinner.setOnItemSelectedListener(
new AdapterView.OnItemSelectedListener() {
public void onItemSelected(AdapterView<?> parent, View itemSelected, int selectedItemPosition, long selected){
Editor editor = mGameSettings.edit();
editor.putLong(GAME_PREFERENCES_GENDER, selectedItemPosition);
editor.commit();
}
@Override
public void onNothingSelected(AdapterView<?> arg0) {
// TODO Auto-generated method stub
}
}
);
//if( mGameSettings.contains(GAME_PREFERENCES_GENDER) ){
Toast.makeText(QuizSettingsActivity.this, "Detected(again): " + spinner.getSelectedItemPosition(), Toast.LENGTH_SHORT).show();
spinner.setSelection( spinner.getSelectedItemPosition() );
//}
Я использую spinner.getSelectedItemPosition()
, чтобы получить индекс выбранного счетчика.Может кто-нибудь сказать, пожалуйста, что я делаю не так?