和尚前段时间整理了一篇关于我们真的了解 Activity 与 Fragment 的生命周期吗?的小博文,整理了基础版的关于 Activity 与 Fragment 的生命周期。 后来又一次被一个大大神问到在 Android7.0 分屏情况下的生命周期时,突然蒙圈了,因此和尚我准备分几个小博文整理一下 Android7.0 分屏下各生命周期的执行顺序,Demo 超级简单,只是为了测试生命周期的执行顺序。 和尚我今天整理一下单个 Activity 在 Android7.0 分屏下各生命周期的执行顺序。
和尚我的测试情况如下:
Tips1: 和尚我个人的理解是在少于等于屏幕一半时,调整分割线,不执行生命周期;大于等于屏幕一半时,调整分割线,Activity 会先销毁再新建。 Tips2: 和尚我这里不在分析横屏情况下分屏周期,但是发现两个有意思的地方,一个是无论是竖屏状态下,占据屏幕的多少,切换到横屏时只会占用屏幕一半,相反由横屏切换竖屏,均占据手机屏幕一半;二是横屏情况下只有占据手机屏幕一半的情况,来回滑动无法调整进行屏幕宽度变化。而同样执行时均为先销毁再创建的生命周期 onPause -> onStop -> onDestroy -> onCreate -> onStart -> onResume。