Activity的生命周期大全

一.一般情况下的生命周期
用户参与的正常activity的生命周期的改变
onCreate:表示Activity正在被创建。该方法中一般执行初始化工作。
onStart:表示Activity正在被启动。这时Activity已经可见了,但没有出现在前台,用户还看不到。
onResume:表示Activity可见,出现在前台,用户可看到。
onPause:表示Activity正在停止。正常紧接着会执行onStop 如果快速返回原Activity则执行onResume方法。一般做数据存储等不耗时工作。
onStop:表示Activity即将停止。做不耗时的回收工作。
onDestroy:表示Activity即将被销毁。做少量回收工作和资源释放。
onRestart:表示Activity正在重启。已启动的Activity从后台调到前台会执行该方法。
特殊情况:
已打开的Activity如果启动一个透明主题的新的Activity,那么原Activity不会回调onStop
1.onStart onResume 和onPause onStop 的区别?
onStart onStop是从是否可见的角度来回调的。
onResume onPause是从是否位于前台的角度来回调的。
除了这,别的在使用方面没有什么区别。
2.当前为A Activity ,如果启动一个B Activity ,那么B的onReume 和A的onPause哪个先执行呢?
A的onPause先执行,然后B的onCreate再执行。
二.异常情况下的生命周期
被系统回收或者设备配置改变而导致的Activity的生命周期的变化
1.资源相关的配置改变导致的Activity被杀死并重新创建的执行过程。
比如横屏切换竖屏的时候,系统配置发生了改变,默认情况下Activity会被销毁并且重新创建。
执行过程:执行Activity的onSaveInstanceState方法来保存当前Activity的状态。这个方法在onStop之前执行,和onPause方法咩有既定的时序关系,当Activity重新被创建后系统会调用onRestoreInstanceState方法取出其中的Bundle参数来恢复当时的Activity状态。
例子:TextView 销毁重建后会恢复之前的文本和状态

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值