onCreate: onStart: onResume:2、切换横屏
onConfigurationChanged: //当Activity可能被销毁时回调,供app暂存数据 onPause: onSaveInstanceState: onStop: onDestroy: onCreate: onStart: onRestoreInstanceState: //Activity被销毁后重新运行时回调 onResume:3、切换竖屏
onConfigurationChanged: onPause: onSaveInstanceState: onStop: onDestroy: onCreate: onStart: onRestoreInstanceState: onResume: //基于Android 7.0,并没有见到传说中的调用两遍
到这里是不是都没有什么问题?很正常
4、为Activity添加属性:android:configChanges="orientation|screenSize",切换横屏onConfigurationChanged:
现在只有一行 onConfigurationChanged 了。
5、再切换竖屏onConfigurationChanged:总结:
- 不设置 Activity 的 android:configChanges 时,切屏会重新调用各个生命周期,切横屏时会执行一次,切竖屏时会执行一次:pause - stop - destory - create - start - resume
- 设置 Activity 的 android:configChanges="orientation|screenSize" 时,切屏不会重新调用各个生命周期,只会执行 onConfigurationChanged 方法



