Android Activity的启动模式

2019-08-06  本文已影响0人  _好好学习

@(Android)

需写实例进行深入理解

    启动模式一共有4种,它们是:

standard

一张图就很好理解


standard.png

    什么配置都不写的话就是这种启动模式。但是每次都新建一个实例的话真是过于浪费,为了优化应该尽量考虑余下三种方式。

singleTop

    每次扫描栈顶,如果在任务栈顶发现了相同的实例则重用,否则新建并压入栈顶。


singleTop.png

<pre><code>
<activity>
android:name=".SingleTopActivity"
android:label="@string/singletop"
android:launchMode="singleTop" >
</activity>
</code></pre>

singleTask

singleTask.png

    当活动的启动模式指定为singleTask,每次启动该活动时系统首先会在返回栈中检查是否存在该活动的实例,如果发现已经存在则直接使用该实例,并把在这个活动之上的所有活动统统出栈,如果没有发现就会创建一个新的活动实例。

重点singleInstance

singleInstance.png

    指定为singleInstance模式的活动会启用一个新的返回栈来管理这个活动。不管是哪个应用程序来访问这个活动,都公用一个返回栈,实现共享活动实例。

上一篇 下一篇

猜你喜欢

热点阅读