[英]Java - Android SDK - savedInstanceState & onSaveInstanceState
我正在尝试保存计数器的状态(mCreate,mRestart ...等),并在onCreate()方法建立后加载它们。 由于某种原因,每次调用onCreate()时,它总是恢复为“ 0”。
// Use these as keys when you're saving state between reconfigurations
private static final String RESTART_KEY = "restart";
private static final String RESUME_KEY = "resume";
private static final String START_KEY = "start";
private static final String CREATE_KEY = "create";
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Has previous state been saved?
if (savedInstanceState != null) {
this.mCreate = savedInstanceState.getInt(CREATE_KEY);
this.mRestart = savedInstanceState.getInt(RESTART_KEY);
this.mStart = savedInstanceState.getInt(START_KEY);
this.mResume = savedInstanceState.getInt(RESUME_KEY);
}
}
@Override
public void onSaveInstanceState(Bundle savedInstanceState) {
savedInstanceState.containsKey(RESTART_KEY);
savedInstanceState.containsKey(RESUME_KEY);
savedInstanceState.containsKey(START_KEY);
savedInstanceState.containsKey(CREATE_KEY);
}
你应该打电话
savedInstanceState.putInt(RESTART_KEY, _your_key_);
在“ onSaveInstanceState”方法中
我检查了这个 。 我在Bundle类中找不到任何函数“ containsKEY”。 但是我认为你应该使用
savedInstanceState.putString("restartkey",RESTART_KEY);
savedInstanceState.putInt("resumekey",RESUME_KEY);
savedInstanceState.putBoolean("startkey",START_KEY);
savedInstanceState.addString("createkey",CREATE_KEY);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.