【发布时间】:2014-06-09 22:05:06
【问题描述】:
为了查看是否调用了onRestoreInstanceState,我做了这个小java代码
package com.MCHAppy.demostate.app;
import android.os.Bundle;
import android.support.v7.app.ActionBarActivity;
import android.util.Log;
public class MainActivity extends ActionBarActivity {
private int visiters=0;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
@Override
protected void onResume() {
super.onResume();
visiters++;
Log.d("Test","Resumed");
}
@Override
protected void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
outState.putInt("visiters",visiters);
Log.d("Test",visiters+" visiters was saved ");
}
@Override
protected void onRestoreInstanceState(Bundle savedInstanceState) {
super.onRestoreInstanceState(savedInstanceState);
visiters=savedInstanceState.getInt("visiters");
Log.d("Test",visiters+" visiters was restored");
}
}
当我点击主页图标时,我在 Logcat 中得到了这个
06-09 17:09:58.240 1316-1316/com.MCHAppy.demostate.app D/MCHAppy﹕ 1 visiters was saved
当我回到我的活动时,我在 Logcat 中得到了这个
06-09 17:58:13.230 1316-1316/com.MCHAppy.demostate.app D/MCHAppy﹕ Resumed
似乎从未调用过 onRestoreInstanceState 。真的是这样吗?
谢谢
【问题讨论】:
-
Activity被杀了吗?如果Activity没有被系统终止,它不会被调用。 -
我已经看到了这些答案,但它们没有帮助我:/