Activity常见的生命周期分析

        从今天起,我会利用空闲时间写写从《Android开发艺术探索》中学到的知识总结。一是为了巩固学到知识,因为我看这本书,大概只用了两周,可以说是囫囵吞枣吧,现在从头开始来梳理一下;二是为了和大家分享,有错误的地方,希望大家指出来,谢谢大笑


onCreate:正在创建;做一些初始化的工作

onRestart:正在重新启动;当前Activity从不可见重新变为可见,则被调用

onStart:正在启动;Activity已经可见,但没有出现在前台,还在后台,所以无法与用户交互

onResume:开始活动;Activity已经可见,出现在前台

onPause:正在停止;正常情况下,onStop会被调用。特殊情况下,如果这个时候快速回到当前Activity,onResume会被调用,就像上图一样。在该生命周期函数内,可以执行存储数据、停止动画等工作,不能太耗时,因为这会影响到新Activity的显示

onStop:即将停止;可以执行回收工作,也不能太耗时

onDestory:即将销毁;可以执行回收工作和最终的资源释放

下面说说常见的几种情况的生命周期回调过程:

a、Activity,第一次启动:onCreate-->onStart-->onReasume

b、打开新Activity或切换到桌面:onPause-->onStop;如果新Activity采用了透明主题,则不会回调onStop
        
c、返回原Activity:onRestart-->onStart-->onResume

d、按下返回键:onPause-->onStop-->onDestory

e、Activity被系统回收了,再打开生命周期的回调和(a)过程是一样的

  注意:
1、onStart和onStop是从Activity是否可见的角度来回调的;onResume和onPause是从Activity是否位于前台的角度来回调的。所以,我们在实际开发中可以只保留其中一对,比如onStart和onStop。
2、假设当前Activity为A,打开一个新Activity为B;其生命周期回调如下:A.onPause-->B.onCreate-->B.onStart-->B.onResume-->A.onStop(当前Android版本为5.0,不同版本可能不一样;这只是提提大笑)
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值