Activity的生命周期

Activity是活动的意思,翻译为界面更合适些。是四大组件中最常用的交互组件。生命周期是如何流转呢?我们在程序中入Log日志打印,展示调用次序。

Activity正常启动流程:

启动首页

MainActivity: onCreate____________________________________>(创建)
MainActivity: onStart______________________________________>(启动,可见)
MainActivity: onResume___________________________________>(启动,在前台)

跳转到第二页

MainActivity: onPause_____________________________________>(暂停,回后台)
SecondActivity: onCreate__________________________________ >
SecondActivity: onStart____________________________________>
SecondActivity: onResume_________________________________>
MainActivity: onStop______________________________________>(停止,不可见)

第二页返回首页

SecondActivity: onPause___________________________________>
MainActivity: onRestart____________________________________>
MainActivity: onStart______________________________________>
MainActivity: onResume___________________________________>
SecondActivity: onStop____________________________________>
SecondActivity: onDestroy__________________________________>(销毁)

结论:旧Activity先onPause(),新Activity再启动

PS:onPause(),onStop() 不要写耗时操作,这样新Activity能尽快显示出来并切换到前台。

Activity异常终止后的声明周期:

Activity意外终止,会调用onSaveInstanceState保存view的数据和状态,此时Activity会重新创建,并调用onRestoreInstanceState恢复数据和状态。

例:手机翻转横屏时,Activity会被重新创建,我们可以写个demo验证一下。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值