Activity生命周期的分析

本篇文章只是简单分析一下Activity生命周期的历程,介绍几个关键的方法,对于Activity的生命周期,网上已经有很多大神都详细介绍了,我就不再展开讨论。主要也是为了自己理解这两种情况,特与大家分享。

1、Activity正常状态下的生命周期分析:
onCreate—>onStar–>onResume—>onPause—>onStop—>onDestroy

onCreate/onDestroy:创建和销毁时会分别调用一次,在整个生命周期只调用一次。(后台状态,Activity不可见)
onPause/onResume:这两个方法会被频繁调用,区别在于是否与用户存在交互。(前台状态,是可见的。)
当A启动B时,用户迅速点击back返回至A时,即B还未创建。此时会先执行A的onPause,然后再执行A的onResume。

2、Activity异常情况下的生命周期分析:
异常情况通常指的是,资源相关的系统配置发生改变(横竖屏切换),或者是系统内存不足时,Activity被杀死。在这种情况下有如下重要方法需要调用:

onSaveInstanceState:保存activity的状态,具体要保存的信息根据不同的view以及业务规则定。该方法通常在onStop之前调用,与onPause的调用顺序无关,可前可后。

onCreate和onRestoreInstanceState:当Activity重新创建时,恢复上一次异常退出时保存的数据。onRestoreInstanceState方法在onStart方法之后被调用,在onRestoreInstanceState中不需要判断Bundle saveInstancestate是否为null,因为当其为null时系统不会调用次方法。而onCreate是需要判断saveInstancestate的状态的。所以Google建议开发人员使用onRestoreInstanceState方法来恢复数据。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值