android activity生命周期

为了更好的理解activity生命周期,大家可以下载示例程序,下载

android 四大组件包括Activity、Service、Broadcast Receiver、Content Provider。 其中Activity是与用户直接交互的组件,通过它可以实现文字输入,单击,双击事件,文字回显,界面控制,可以说它实际上是android的一张脸,公关部,餐馆服务员,是最前线的工作者。

android应用程序的生命周期也主要通过activity的生命周期得以体现,理解activity生命周期也是android开发所必不可少的。

下图为activity的生命周期,可以看出其主要包括oncreate, onstart, onResume, onPause, onStop, onDestory, onRestart, Activity running, APP process几个状态。


onCreate:  当activity 第一次被创建时回调该函数,在这个函数内你应该完成所有资源加载以及程序的正常初始化工作,包括创建视图,初始化相关数据。

onStart: 当activity视图对用户可见后会调用这个函数。

onResume:通过调用该函数,这个activity可以和用户进行交互,当可以和用户进行交互时,这个activity将会放到activity stack的栈顶。

onPause:当另外一个activity变为activity stack最顶端时,这个函数将会被调用,在这个函数中我们可以添加代码保存我们的数据,关闭当前activity动画以节省CPU资源,需要特别说明,这个过程的不应该过于复杂,否则将会加大另一个activity界面对用户可见的时间,大大降低用户体验。通俗来讲当另外一个activity要变为最界面顶层和用户直接交互是,这个函数被调用,如果当前activity会被新的activity完全遮挡,对用户完全不可见时,会继续调用onstop函数,大家可以点击示例中的changeUIByActivity按钮,通过查看log加以验证,因为新的activity被设置成了透明背景,所以对用户仍然可见,所以不会继续调用stop函数

onStop:前面已经支持,如果当前activity将会被新的activity完全遮挡,系统将会调用stop, 当该activity重新对用户可见时,将会调用Restart, 当该activity退出后,回调用onDestory函数

onDestory:当该activity被销毁时这个函数会被调用,销毁原因包括用户调用finish()函数或者系统由于资源紧张而主动释放该activity以节省空间,可以通过isFinishing方法判断这两种情景

onRestart:当该activity不不可见,重新变为可见时,该函数将会被调用

Activity Running: 这是 APP当前被激活的actitiy和用户进行交互的一个状态,onClick等监听函数在这个系统状态下将会生效。

APP process killed: 当系统内存空间不足时,有更高优先级的app需要空间时,系统将会进入这个状态,在这个状态下该 activity所占用的资源将会被回收,直到用户重新激活该activity,将会重新执行onCreate创建资源。




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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值