安卓活动的生命周期

活动的七个方法与三个阶段:

  1. void onCreate(Bundle savedInstanceState)
    每个活动都会有的方法,在活动第一次被创建的时候调用
  2. OnStart()
    这个活动在活动由不可见变为可见的时候调用
  3. OnResume()
    这个方法在活动准备好和用户进行交互的时候调用,此时的活动一定位于返回栈的栈顶,并且处于运行状态。
  4. onPause()
    这个方法在系统准备去启动或者恢复另一个活动的时候调用。 我们通常会在这个方
    法中将一些消耗 CPU 的资源释放掉,以及保存一些关键数据,但这个方法的执行速度
    一定要快,不然会影响到新的栈顶活动的使用。
  5. onStop()
    这个方法在活动完全不可见的时候调用。它和 onPause()方法的主要区别在于,如
    果启动的新活动是一个对话框式的活动,那么 onPause()方法会得到执行,而 onStop()
    方法并不会执行。
  6. onDestroy()
    这个方法在活动被销毁之前调用,之后活动的状态将变为销毁状态。
  7. onRestart()
    这个方法在活动由停止状态变为运行状态之前调用,也就是活动被重新启动了。

以上七个方法中除了 onRestart()方法,其他都是两两相对的,从而又可以将活动分为三
种生存期。

三个阶段:

  • 开始Activity:在这个阶段依次执行3个生命周期的方法,分别是:onCreate、onStart和onResume方法
  • Activity重新获得焦点:如果Activity重新获得焦点,会依次执行3个方法,onRestart、onStart和onResume
  • 关闭Activity:当Activity被关闭时系统会依次执行3个方法,onPause、onStop和onDestory。

从以上的Activity的生命周期不难看出,该图包含了两层循环:
第一层循环是:onPause->onResume->onPause
第二层循环是:onStart->onRestart->onResume->onPause->onStop
第一层循环称为是 焦点生命周期,第二层循环可以视为生命周期。也就是说,第一层循环是在Activity焦点获得与失去的过程中循环,在这个过程中,Activity始终是可见的
第二层循环是Activity可见和不可见的过程中循环。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值