public class MainActivity extends Activity {
private static final String TAG="MainActivity";
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
if(savedInstanceState!=null){
Log.e(TAG, "oncreate|reade page----"+savedInstanceState.getString("page"));
}
System.out.println("11111");
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
/**
* Acitivity存在被系统回收的可能(只要有可能)才会调用此方法,这是为了给用户进行数据保存的机会,当然你也可以不保存
* 如果是认为的按下BACK键销毁当前Acitivity那么 onSaveInstanceState方法不会执行
*
* 关于这个可能:
* 1 按下电源键
* 2 跳转到别的Activity
* 3 按下HOME 或者长按Home选择其他应用
* 4 横竖屏切换
*
* 但我们保存数据一般不是在此方法中 因为从setting中停止应用程序 该方法不会被执行的
* 一般在生命周期的onStop方法中保存数据
*/
@Override
protected void onSaveInstanceState(Bundle outState) {
// TODO Auto-generated method stub
Log.e(TAG, "onSaveInstanceState run..");
outState.putCharSequence("page", "第八页");
super.onSaveInstanceState(outState);
}
/**
* onRestoreInstanceState只有在Activity确实被系统回收了才会被调用,比如横竖屏切换onRestoreInstanceState就会被执行
* 一般来说按Home键 再去回到Activity,Acitivity一般不被系统销毁,onRestoreInstanceState也不会被调用
* onRestoreInstanceState(Bundle savedInstanceState)的参数也传入到了onCreate(Bundle savedInstanceState)
*
*/
@Override
protected void onRestoreInstanceState(Bundle savedInstanceState) {
// TODO Auto-generated method stub
Log.e(TAG, "onRestoreInstanceState run..");
Log.e(TAG, "onRestoreInstanceState|reade page----"+savedInstanceState.getString("page"));
super.onRestoreInstanceState(savedInstanceState);
}
}
05-04 12:39:24.129: E/MainActivity(13121): onSaveInstanceState run..
05-04 12:39:24.539: E/MainActivity(13121): oncreate|reade page----第八页
05-04 12:39:24.539: E/MainActivity(13121): onRestoreInstanceState run..
05-04 12:39:24.539: E/MainActivity(13121): onRestoreInstanceState|reade page----第八页
05-04 12:40:22.919: E/MainActivity(13121): onSaveInstanceState run..
05-04 12:40:28.379: E/MainActivity(13121): oncreate|reade page----第八页
05-04 12:40:28.379: E/MainActivity(13121): onRestoreInstanceState run..
05-04 12:40:28.379: E/MainActivity(13121): onRestoreInstanceState|reade page----第八页
05-04 12:39:24.129: E/MainActivity(13121): onSaveInstanceState run..
05-04 12:39:24.539: E/MainActivity(13121): oncreate|reade page----第八页
05-04 12:39:24.539: E/MainActivity(13121): onRestoreInstanceState run..
05-04 12:39:24.539: E/MainActivity(13121): onRestoreInstanceState|reade page----第八页
05-04 12:40:22.919: E/MainActivity(13121): onSaveInstanceState run..
05-04 12:40:28.379: E/MainActivity(13121): oncreate|reade page----第八页
05-04 12:40:28.379: E/MainActivity(13121): onRestoreInstanceState run..
05-04 12:40:28.379: E/MainActivity(13121): onRestoreInstanceState|reade page----第八页