一、onCreate()方法中最后判断须要保存的状态值ide
if(savedInstanceState != null){ mCurrentIndex = savedInstanceState.getInt(KEY_INDEX,0); }
二、在onCreate()方法后重写onSaveInstanceState(Budle)方法spa
@Override public void onSaveInstanceState(Bundle savedInstanceState){ super.onSaveInstanceState(savedInstanceState); Log.i(TAG,"onSaveInstanceState"); savedInstanceState.putInt(KEY_INDEX,mCurrentIndex);
原理:全部activity的视图将自身的状态数据保存在Budle对象中,这样屏幕旋转就不会丢失反转前的数据。.net
须要注意的地方:3d