Android activity生命周期的变化及应用场景

大家好,今天和大家分享一道关于activity生命周期的面试题,希望可以帮助大家更好的理解activity生命周期这一块,废话不多说,开干!

首先,咱们看一下官方给我们的activity生命周期图

那么activity生命周期为:

onCreate()-->onStart()-->onResume()-->onPause()-->onStop()-->onDestroy()

接下来看一下面试官一般会怎么问:

①ActivityA跳转ActivityB执行哪些生命周期

答:ActivityA:onPause ->ActivityB:( onCreate - > onStart - >onResume )- >ActivityA: onStop

当点击跳转之后,activityA的变化,如图

activityB的变化,如图

activityA的变化,如图

②ActivityB返回ActivityA执行哪些生命周期:

ActivityB:onPause - >ActivityA(onRestart -> onStart - > onResume) ->ActivityB:(onStop - >onDestory)

当点击跳转之后,activityB的变化,如图

activityA的变化,如图

activityB的变化,如图

③点击返回键,activity执行那些生命周期:

onPause()-->onStop()-->onDestroy

再次重启页面执行的生命周期:

--->onCreate-->onstart-->onResume

④点击home键时,activity生命周期的变化:

onPause-->onStop

再次重启页面执行的生命周期:

⑤切换横竖屏时,activity生命周期的变化:

当在清单文件中不配置android:configChanges="orientation"的 时候,activity会重建

当在清单文件中配置android:configChanges="orientation"的 时候,不会创建activity,如图

当在清单文件中配置android:configChanges="orientation|keyboardHidden"的 时候,不会创建activity,如图

当在清单文件中配置android:configChanges="orientation|keyboardHidden|screenSize"的 时候,不会创建activity,如上图

看了网上有些帖子说,横竖屏切换时activity生命周期不仅跟清单文件AndroidManifest.xml中android:configChanges属性有关,而且还跟手机系统的版本有关,因为在Android 4.0及其以上系统上,还跟程序的targetSdkVersion设置有关,大家可以参考这个帖子:https://blog.csdn.net/xiaoli100861/article/details/50855152  进行更深一步的研究,顺便说一下我的手机是Android 8.0的。

好啦,就总结到这儿啦!

 

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值