android开发:Activity启动的四种模式、图文理解

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/qq_39027256/article/details/102630199

1.默认启动模式standard:

在该模式下,启动的Activity会依照启动顺序被依次压入Task中。即使栈中已经存在该Activity也不管。

2.栈顶复用模式singleTop:

在该模式下,如果栈顶Activity是我们要新建的Activity(目标Activity),那么就不会重复创建新的Activity。

3.栈内复用模式singleTask:

在singleTask模式下,如果task栈内存在目标Activity实例,则不用创建新的实例,它会将栈内的对应Activity实例之上的所有Activity弹出栈,然后把该Activity置于栈顶的位置

4.全局唯一模式singleInstance:

在该模式下,假如Activity3是singleInstance,其他都是默认的,当启动Activity3的时候系统会判断该实例是否存在,存在则不创建,不存在则创建一个新的任务栈存放Activity3实例,并且焦点移动到该栈(图中红色的栈)。当我们再启动Activity4的时候会把Activity4压入原有的栈,焦点移动到原有的栈(图中蓝色的栈)。这时候回退的时候会先把拥有焦点的栈所有Activity依次退出后才会执行下一个栈。所以回退顺序是Activity4——Activity2——Activity1——Activity3

猜你喜欢

转载自blog.csdn.net/qq_39027256/article/details/102630199