我需要你的帮助。我正在制作一个应用程序,我使用方法onSaveInstanceState()
and onRestoreInstanceState()
,但第二种方法不起作用。
当按下主页按钮时,我可以看到程序如何访问 onSaveinstancestate(),但是当我返回应用程序时,代码不会调用onRestoreInstanceState()
或onCreate()
.
结果,应用程序从头开始。我不知道原因……你能帮帮我吗?
这是我的代码:
public class MainActivity extends ActionBarActivity {
MyView myView;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
myView = new MyView(this);
setContentView(myView);
if (savedInstanceState != null) {
myView .SetScore(savedInstanceState.getInt("Id"));
myView .SetNivel(savedInstanceState.getInt("Valor"));
}
}
.....
@Override
protected void onRestart(){
super.onRestart();
myView = new MyView(this);
setContentView(myView );
}
@Override
protected void onRestoreInstanceState(Bundle savedInstanceState){
super.onRestoreInstanceState(savedInstanceState);
if (savedInstanceState != null) {
myView.SetScore(savedInstanceState.getInt("Id"));
myView.SetNivel(savedInstanceState.getInt("Valor"));
}
}
@Override
protected void onSaveInstanceState(Bundle savedInstanceState){
savedInstanceState.putInt("Score",myView.GetId());
savedInstanceState.putInt("Nivel",muView.GetValor());
super.onSaveInstanceState(savedInstanceState);
}
}