Android横竖屏切换

一、生命周期

1、不设置configChanges的情况下的生命周期如下所示:

这里可以清晰得看到,Activity再次重新创建了。。。

2、设置android:configChanges="orientation|keyboardHidden|screenSize"的情况下的生命周期如下所示:

其中红色方框中的log是屏幕旋转后的,只要眼神没问题,依然可以清晰的看到,这次Activity并没有重新创建,而是直接回调了onConfigurationChanged()方法,这样就避免了因为横竖屏切换而导致的Activity重新创建的问题。

二、说明和注意:

1、测试手机是小米8,Android 8.1.0

2、android:configChanges="orientation|keyboardHidden|screenSize"必须设置三个参数,少一个都不行,真机上测试,少一个 参数都会重新创建Activity;但是我想吐槽AS模拟器一下,一开始的时候我是用AS模拟器做的测试,模拟器是8.0的系统,我只写了orientation|keyboardHidden两个参数,在模拟器上就已经不重新创建Activity了,直接回调onConfigurationChanged()方法,但是小米8的真机上依然会重新创建Activity,所以以后做类似的测试最好用真机,模拟器毕竟是模拟器,就好比充气娃娃只能是个充气娃娃。。。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值