Воссоздание состояния активности после нажатия кнопки назад
Я не могу понять, почему saveInstanceState всегда имеет значение null в методе onCreate, когда я успешно сохраняю данные в Bundle в методе onSaveInstanceState. Когда я запускаю свою программу на AVD и нажимаю кнопку «назад» (уничтожение активности), а затем снова создаю ее, щелкая ее значок, сохраненное состояние всегда равно нулю. Вот простая программа, которая проверяет эту проблему.
package com.example.myTestApp;
import android.app.Activity;
import android.os.Bundle;
import android.widget.Button;
public class MyActivity extends Activity {
/**
* Called when the activity is first created.
*/
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button button = (Button)findViewById(R.id.button);
if(savedInstanceState == null){
button.setText("No");
}else{
button.setText("Yes");
}
}
static final String STATE_SCORE = "playerScore";
static final String STATE_LEVEL = "playerLevel";
private int mCurrentScore = 1;
private int mCurrentLevel = 2;
@Override
public void onSaveInstanceState(Bundle savedInstanceState) {
super.onSaveInstanceState(savedInstanceState);
savedInstanceState.putInt(STATE_SCORE, mCurrentScore);
savedInstanceState.putInt(STATE_LEVEL, mCurrentLevel);
}
}
Подскажите, как решить эту проблему, если это возможно.