configChanges的作用
不设置Activity的android:configChanges时,切屏会重新调用各个生命周期,切横屏时会执行一次,切竖屏时会执行两次;
设置Activity的
android:configChanges="orientation"
时,切屏还是会重新调用各个生命周期,切横、竖屏时只会执行一次;sdkVersion<=12,设置Activity的
android:configChanges="orientation|keyboardHidden"
时,切屏不会重新调用各个生命周期,只会执行onConfigurationChanged方法。
sdkVersion>13时,需设置android:configChanges="orientation|keyboardHidden|screenSize"
才可保证activity不被销毁重建。
横竖屏切换时的生命周期
- android3.0之前:onResume() – onSaveInstanceState() – onPause(),即调用onPause()之前,调用onSaveInstanceState()。
- android3.0之后:onResume() – onPause() – onSaveInstanceState() – onStop(),即调用onStop()之前,调用onSaveInstanceState()。
Android横竖屏切换及其生命周期
最新推荐文章于 2023-04-20 17:16:58 发布