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横竖屏切换及其生命周期
最新推荐文章于 2026-03-28 04:01:40 发布
本文详细解析了Android中Activity的configChanges属性的作用及不同设置下屏幕旋转时的生命周期回调行为,并介绍了不同SDK版本之间的差异。

830

被折叠的 条评论
为什么被折叠?



