本帖最后由 liu 于 2018-12-11 11:47 编辑
Activity的四种启动模式
Activity的四种启动模式分别是:standard、singleTop、singleTask和singleInstance,在AndroidManifest.xml中通过<activity>标签的android:launchMode属性设置
例如:
[Java] 纯文本查看 复制代码 <activity
android:name=".SecondActivity"
android:launchMode="standard" />
1、standard
默认启动模式,每启动一个新的Activity,它就会进入任务栈并处于栈顶的位置,每次都创建一个新的实例
2、singleTop
当启动的Activity处于栈顶时,则不创建新的实例,如果启动的Activity没有处于栈顶时,则创建一个新的实例位于栈顶
3、singleTask
如果栈中存在当前Activity实例,则直接复用,并把当前Activity之上所有实例全部移出栈,如果栈中不存在当前Activity实例,则会创建一个新的实例放入栈中
4、singleInstance
当启动时系统会为其创造一个单独的任务栈, 以后每次都会使用这个单例, 直到其被销毁,如果在启动这样的Activiyt时,已经存在了一个实例,那么会把它所在的任务调度到前台,重用这个实例。
开发时根据每个模式的特点来选择合适的启动模式
|