活动的生命周期

一、返回栈

Android的活动是可以层叠的,每启动一个新的活动,就会覆盖在原活动之上,然后点击Back键会销毁最上面的活动,之前显示的一个活动就会显示出来。

Android是使用任务(Task)来管理活动的,一个任务就是一组存放在栈里的活动的集合,这个栈也称作返回栈(Back Stack)。默认的情况下,每当启动一个新的活动,他会在返回栈中入栈,并处于栈顶的位置。而每当我们按下Back键或调用finish()方法去销毁一个活动时,处于栈顶的活动会出栈,这时前一个入栈的活动就会重新处于栈顶位置。系统总是会显示处于站定的活动给用户。如图显示:


、活动状态

每个活动在其生命周期中最多可能会有四种状态。

1、运行状态

当一个活动处于返回栈的栈顶时,该活动就处于运行状态。

2、暂停状态

当一个活动不再处于栈顶时,但仍然可见时,该活动就处于暂停状态。

3、停止状态

当一个活动不再处于栈顶时,并且完全不可见时,该活动就处于停止状态。系统仍然会为该状态下的活动保存相应的状态和成员变量,但系统内存不足时就有可能被系统回收。

4、销毁状态

当一个活动从返回栈中被移除时就会处于销毁状态。系统最倾向于回收该状态下的活动。


三、活动的生命周期



1、onCreate()

活动在第一次被创建时调用

2、onStart()

活动由不可见变为可见时调用

3、onResume()

活动准备好与用户交时调用,此时活动一定处于栈顶,并处于运行状态。

4、onPause()

系统准备去启动或恢复另一个活动的时候调用。

5、onStop()

活动完全不可见的时候调用。如果启动的是对话框式的活动时,onPause()会执行,而onStop()并不会执行。

6、onDestroy()

活动在销毁之前调用。

7、onRestart()

活动由停止状态变为运行状态时之前调用。

活动的三种生存期:

①完整生存期:

onCreate()到onDestroy()之间所经历的

②可见生存期:

onStart()onStop()之间所经历的

③前台生存期:

onResume()onPause()之间所经历的


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值