android第七节活动的生命周期

创建三个活动,一个主活动MainActivity,两个按钮,分别打开另外两个活动,第一个活动是一个文本NormalActivity,第二个是一个对话框DialogActivity。

官方图片

只有主活动有标记信息

第一个活动被创建会依次执行

onCreate()

onStart()

onResume()
按下第一个按钮

按下第一个按钮打开NormalActivity把MainActivity完全遮挡住,因此会执行

onPause()

onStop()

先把MainActivity暂停然后再停止。

按下返回键

会执行

onRestart() 

onStart()

onResume()

之前MainActivity进入了停止状态,onRestart恢复

然后依次执行 onStart onResume方法。

onCreate方法并不会执行,因为MainActivity并没有被重新创建,创建一次就可以了。

按下第二个按钮

然后按第二个按钮进入DialogActivity对话框活动

onPause()

只出现了onPause,没有出现onStop,因为DialogActivity并没有遮挡住MainActivity,对话框只是浮在上面,此时的MainActivity只是进入了暂停状态,并没有进入停止状态。

按下返回键
onResume()

这时回到MainActivity

再按一下back
onPause()

onStop()

onDestroy()

活动结束,销毁掉。

后台切换一下执行
onPause() 

onStop()
回到原来的程序执行
onRestart()

onStart()

onResume()

所有活动都有标记信息

按下第一个按钮执行
onPause() 

Nor_onCreate()

Nor_onStart()

Nor_onResume()

onStop()

先把MainActivity暂停,然后创建并启动NormalActivity,最后再将MainActivity停止。

按下返回键
Nor_OnPause()

OnRestart()

OnStart()

OnResume()

Nor_OnStop()

Nor_OnDestroy()

立马将当前NormalActivity活动暂停,然后重新启动始被停止的MainActivity,最后将NormalActivity暂停再摧毁。

按下第二个按钮执行
OnPause()

Dia_OnCreate()

Dia_OnStart()

Dia_OnResume()

不会有执行onStop() 因为对话框是浮在第一个活动上的 第一个活动并没有停止

在空白处点击使对话框消除
Dia_OnPause()

OnResume()

Dia_OnStop()

Dia_OnDestroy()

将DialogActivity活动先暂停,然后恢复处于暂停的MainActivity,最后DialogActivity停止,销毁。

此时处于MainActivity

按下返回键
OnPause()

OnStop()

OnDestroy()

转载于:https://www.cnblogs.com/pjc20/p/7707686.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值