Activity生命周期变化

Activity 类提供六个核心回调:onCreate()、onStart()、onResume()、onPause()、onStop() 和 onDestroy()。当 Activity 进入新状态时,系统会调用每个回调。

情况说明:

  • 启动Activity:系统会先调用onCreate方法,然后调用onStart方法,最后调用onResume,Activity进入运行状态
  • 当前Activity被其他Activity覆盖其上或被锁屏:系统会调用onPause方法,暂停当前Activity的执行
  • 当前Activity由被覆盖状态回到前台或解锁屏:系统会调用onResume方法,再次进入运行状态
  • 当前Activity转到新的Activity界面或按Home键回到主屏,自身退居后台:系统会先调用onPause方法,然后调用onStop方法,进入停滞状态
  • 用户后退回到此Activity:系统会先调用onRestart方法,然后调用onStart方法,最后调用onResume方法,再次进入运行状态
  • 当前Activity处于被覆盖状态或者后台不可见状态,即第2步和第4步,系统内存不足,杀死当前Activity,而后用户退回当前Activity:再次调用onCreate方法、onStart方法、onResume方法,进入运行状态
  • 用户退出当前Activity:系统先调用onPause方法,然后调用onStop方法,最后调用onDestory方法,结束当前Activity

Activity 从 A跳转B生命周期变化:

  1. 首先,启动A, A的生命周期变化:

    ​ onCreate -> onStart -> onResume

  2. 在A点击back返回主界面,然后再回到A:

    ​ (1) onPause -> onStop -> onDestroy

    ​ (2) onCreate -> onStart -> onResume

  3. 在A点击home键返回主界面,然后再回到A:

    ​ (1) onPause -> onStop

    ​ (2) onRestart -> onStart -> onResume

  4. A跳转B时,A、B生命周期变化:

    ​onPause[A] -> onCreate[B] -> onStart[B] -> onResume[B] -> onStop[A]

  5. 在B点击back返回A时,A、B生命周期变化:

    ​onPause[B] -> onRestart[A] -> onStart[A] -> onResume[A] -> onStop[B] -> onDestroy[B]

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值