Activity的生命周期 A启动B,B返回A, A,B的全生命周期

一、Activity的加载模式有四种:

standard: 标准模式,默认的加载模式,每次通过这种模式启动目标Acitivity,都创建一个新的实例,并将该Activity添加到当前栈中。

singleTop: 与标准模式类似,只有当Activity位于Task顶时,系统不会重新创建目标Activity的示例,而是直接复用已有的Activity实例。

singleTask: 如果要启动的Activity不存在,系统创建Activity实例,并将它加入栈顶,如果将启动的Activity存在,已经位于栈顶,此时与singleTop行为相同;如果要启动的Activity存在,但不是位于栈顶,系统会使Activity上面所有的Activity出栈。

singleInstance:如果要启动的Activity不存在,系统会创建一个新的Task,再创建Activity实例,将它加入新Task的栈顶;如果要启动的Activity存在,无论它在哪个应用程序中,系统都会把该Activity所在的Task转至前台。

二、A启动B A生命周期全过程

1.启动A

Activity的初始化了,A第一步创建onCreate(): -------->成功! Activity被激活A,onStart Activity显示在屏幕上(): -------->成功! Activity被恢复A,onResume(): -------->成功!

2.在A中启动B

Activity被暂停A,Activity进入暂停状态onPause(): -------->成功! B------------------>(): 创建! Activity被激活B,onStart Activity显示在屏幕上(): -------->成功! Activity被恢复B,onResume(): -------->成功! Activity被停止A,Activity进入停止状态onStop(): -------->成功!

3.从B中返回A(按物理硬件返回键)

Activity被暂停B,Activity进入暂停状态onPause(): -------->成功! Activity被重启A,Activity从停止状态进入活动状态onRestart(): -------->成功! Activity被激活A,onStart Activity显示在屏幕上(): -------->成功! Activity被恢复A,onResume(): -------->成功! Activity被停止B,Activity进入停止状态onStop(): -------->成功! Activity的消亡了,B最后的生命!销毁onDestroy(): -------->成功!

4.继续返回

Activity被暂停A,Activity进入暂停状态onPause(): -------->成功! Activity被停止A,Activity进入停止状态onStop(): -------->成功! Activity的消亡了,A最后的生命!销毁onDestroy(): -------->成功!

你可能感兴趣的:(Activity的生命周期 A启动B,B返回A, A,B的全生命周期)