Android中Activity正常情况下的生命周期

这篇博客我要对Activity正常情况下的生命周期做一个讲解。

1.什么是正常情况

正常情况指的是我们正常打开关闭页面所要经历的生命周期。

2.正常情况经历的7个生命周期概览

  • onCreate:创建页面。把页面上的各个元素加载到内存中。

  • onStart:开始页面。把页面显示在屏幕上。

  • onResume:恢复页面。让页面在屏幕上活动起来,例如开启动画、开始任务等。

  • onPause:暂停页面。让页面在屏幕上的动作停下来。

  • onStop:停止页面。把页面从屏幕上撤下来。

  • onDestroy:销毁页面。把页面从内存中清除掉。

  • onRestart:重启页面。重新加载内存中的页面数据。

3.每一个生命周期回调方法的相关重点内容

<1> onCreate

  • 启动时调用
  • 生命周期第一个回调方法
  • 可以在这个方法中做一些初始化的工作

<2>onStart

  • 此时Activity已经正在启动
  • 可见但无法交互

<3>onResume

  • 可见可交互
  • 此时Activity处于Active状态

<4>onPause

  • Activity正在停止
  • 与onResume方法成对出现

<5>onStop

  • onPause执行后立即执行
  • 被完全新的Activity覆盖
  • 此时Activity处于Stop状态
  • 不可见,后台运行

<6>onDestroy

  • 表示Activity正在销毁
  • 生命周期最后一个方法
  • 用来做一些回收和资源释放的工作
  • 与onCreate成对

<7>onRestart

  • 表示Activity正在重新启动
  • 由Stopped状态恢复active状态时调用
  • 正常启动不调用

4.几种情况下生命周期的回调顺序

  • 打开一个页面:本页面onCreate → onStart → onResume
  • 从一个页面跳入另一个页面:上一个页面onPause → 下一个页面onCreate → onStart → onResume → 上一个页面onStop
  • 从一个页面返回上一个页面顺序:下一个页面onPause →上一个页面onRestart → onStart → onResume → 下一个页面onStop → onDestroy
  • 横竖屏:无论是竖屏切换到横屏,还是横屏切换到竖屏,都是原屏幕的页面从onPause 到 onStop 再到 onDestroy 一路销毁,然后新屏幕的页面从onCreate到onStart再到onResume一路创建而来。
  • 按HOME健后又返回APP:onCreate → onStart → onResume → onPause →  onStop → onRestart → onStart → onResume
  • onActivityResult 和 onRestart调用顺序:先调用onActivityResult再调用onRestart

正常情况下Activity生命周期基本就先这么多了。这里需要提一嘴,异常情况的生命周期大家可以看我的面试博客

Android基础相关面试问题

其中的11和12项是异常情况下生命周期。

如果大家面试中或者开发中遇到什么关于生命周期的其他问题可以在评论中和我讨论。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值