Android Activity的生命周期

Activity的基类定义了管理一个活动的生命周期的一系列事件。该类定义了如下事件:
onCreate()——当活动首次被创建时调用。

onStart()——当活动对用户可见时调用。

onResume()——当活动与用户开始交互时调用。

onPause()——在当前活动被暂停并恢复以前的活动时调用。

onStop()——当活动不再对用户可见时调用。

onDestroy()——在活动被系统销毁(手动或由系统执行以节省内存)前调用。

onRestart()——在活动已停止并要再次启动时调用。

onSaveInstanceState(Bundle outState)——Activity被系统杀死时被调用,例如:屏幕方向改变时,Activity被销毁再重建;当前Activity处于后台,系统资源紧张将其杀死. 另外,当跳转到其他Activity或者按Home键回到主屏时该方法也会被调用,系统是为了保存当前View组件的状态. 在onPause之前被调用。

onRestoreInstanceState(Bundle savedInstanceState)——Activity被系统杀死后再重建时被调用. 例如:屏幕方向改变时,Activity被销毁再重建;当前Activity处于后台,系统资源紧张将其杀死,用户又启动该Activity. 这两种情况下onRestoreInstanceState都会被调用,在onStart之后。


 下面将呈现Acrivity的生命周期图

这里写图片描述

 我们再进一步解析这幅图
 1.启动Activity:系统会先调用onCreate方法,然后调用onStart方法,最后调用onResume,Activity进入运行状态。

 2.当前Activity被其他Activity覆盖其上或被锁屏,系统会调用onPause方法,暂停当前Activity的执行。

 3.当前Activity由覆盖状态回到前台或解锁屏(此时状态为可见的,若不可见,执行4,5,6)。系统会调用onResume方法,再次进入运行状态。

 4.当前Activity转到新的Activity界面或按Home键回到主屏,自身退居后台:系统会先调用onPause方法,然后调用onStop方法,进入停滞状态。

 5.用户后退回到此Activity:系统会先调用onRestart方法,然后调用onStart方法,最后调用onResume方法,再次进入运行状态。

 6.当前Activity处于被覆盖状态或者后台不可见状态,即第2步和第4步,系统内存不足,杀死当前Activity,而后用户退回当前Activity:再次调用onCreate方法、onStart方法、onResume方法,进入运行状态。

 7.用户退出当前Activity:系统先调用onPause方法,然后调用onStop方法,最后调用onDestory方法,结束当前Activity。


 因此,我们有如下的结论
 使用onCreate()方法创建和实例化将在应用程序中使用的对象。

 使用onResume()方法启动当活动位于前台时需要运行的任何服务或代码。

 使用onPause()方法停止当活动不在前台时不需要运行的任何服务或代码。

 使用onDestory()方法在活动销毁前释放资源。

因为所学知识就那么多- -,以后如果学到更多的知识,我会加以补充。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值