版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
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