您当前的位置: 首页 >  面试
  • 0浏览

    0关注

    674博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

面试:Android横竖屏切换Activity的生命周期

沙漠一只雕得儿得儿 发布时间:2021-12-23 09:25:00 ,浏览量:0

1、新建一个能打印生命周期的Activity并运行
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 方法
关注
打赏
1657159701
查看更多评论
立即登录/注册

微信扫码登录

0.0378s