在Activity中覆盖两个方法就可以实现旋转前保存数据,一个是onSaveInstanceState(),一个是onCreate()。
@Override
//onPause()、onStop()以及onDestroy()方法之前由系统调用,用来暂时的保存数据到Bundle中
protected void onSaveInstanceState(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onSaveInstanceState(savedInstanceState);
}
@Override
//当onCreate方法被调用时,传入收到的Bundle
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
protected void onSaveInstanceState(Bundle savedInstanceState)方法通常在onPause()、onStop()以及onDestroy()方法之前由系统调用,它默认的实现要求所有的Activity的视图将自身状态数据保存在Bundle对象中,Bundle 是存储字符串键与限定类型值之间映射关系(键值对)的一种结构。覆盖onCreate方法时,实际是在调用activity超类的onCreate方法,并传入收到的bundle。