Activity的启动模式(day02)

Posted 若曦`

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Activity的启动模式(day02)相关的知识,希望对你有一定的参考价值。

1. 启动模式总结

第四个是额外的活动栈,下图截漏了
在这里插入图片描述

2. 启动模式的位置

在这里插入图片描述

3. 四种启动模式

(1) standard(标准)模式

standard是默认的启动模式

standard模式下,每次跳转都会启动一个新的实例
在这里插入图片描述
当Activity全部退出时,系统会自动回收这个空栈

(2) singleTop(栈顶复用)模式

如果栈顶的活动是要跳转的活动,则不会新创建

注意判断的是栈顶的活动的启动模式

1跳转1

这时不会创建新的1,因为1是栈顶活动

在这里插入图片描述

(3) singleTask(栈内复用)模式

栈内复用,是指同一个栈内才可以复用,不同栈的话则不能

而且如果存在该活动,该活动上面的活动都会被移出栈

同一个栈的情况
在这里插入图片描述

不同栈
在这里插入图片描述

(4) singleInstance模式

singleInstance模式也是复用模式,不过这里的是将不同栈的取出来

且存储时会存储到不同的任务栈中

1跳2 ,2为singleInstance
在这里插入图片描述
2跳3,3跳2
在这里插入图片描述

singleInstance模式下的出栈顺序

① 当界面顶层是2时

先将2的移除,再正常出栈

例子1
在这里插入图片描述
例子2 (存在多个singleInstance活动)

singleInstance提供的栈中的活动总会最后移出

(singleInstance栈的移除顺序看活动启动的先后次序,后进先出)
在这里插入图片描述

② 当界面顶层不是2时

singleInstance提供的栈中的活动总会最后移出
在这里插入图片描述

以上是关于Activity的启动模式(day02)的主要内容,如果未能解决你的问题,请参考以下文章

Activity的启动模式

Activity的启动模式

Android:四种启动模式

android 怎么设置activity的启动模式

Activity启动模式

Activity的启动模式