1、不设置Activity的android:configChanges时,切屏会重新调用各个生命周期,切横屏时会执行一次,切竖屏时会执行一次,网上有的说是,切竖屏会执行两次,我在android2.3的模拟器和2.3手机上都试了,只有一次。但是在android2.2的模拟器上测试了,切竖屏的时候,会执行两次生命周期。
2、设置Activity的android:configChanges="orientation"时,切屏还是会重新调用各个生命周期,切横、竖屏时只会执行一次,而且,切竖屏的时候,最后还会调用onConfigurationChanged 。模拟器会按照以上说的执行,手机的话,不会执行声明周期,只会执行 onConfigurationChanged
3、设置Activity的android:configChanges="orientation|keyboardHidden"时,切屏不会重新调用各个生命周期,只会执行onConfigurationChanged方法
4、横竖屏切换时,生命周期顺序。
activity oncreate
activity onStart
activity onResume
activity onSaveInstanceState
activity onPause
activity onStop
activity onRetainNonConfigurationInstance
activity onDestroy
activity oncreate
activity onStart
activity onRestoreInstanceState
activity onResume
activity onSaveInstanceState
activity onPause
activity onStop
activity onRetainNonConfigurationInstance
activity onDestroy
activity oncreate
activity onStart
activity onRestoreInstanceState
activity onResume