06 Activity 4中启动模式

前言:改变Activity的启动模式可以清单文件AndroidManifest的Activity标签添加属性android:launchMode="standard"中修改如下图:launchMode一共有四种属性:standard (默认) ,singleTop,singleTask,singleInstance



1,standard:

正常模式 拿来主义,默认都是这个属性 ;也就是说你每次StartActivity都会在回退栈中生成一个Activity实例

内存图:




2,singleTop:

如何当前Activity实例 在栈顶 此时你在 startActivit 该Activity(非实例)  那么将不会创建,除非此Activity实例 不在栈顶。

那么我们假设Second的启动模式为singleTop那么内存图为:


3,singleTask:

单任务模式:不管在任何情况只能有一个Activity实例 如果该Activity实例 不在栈顶 时 再启动该Activity实例 时 会把栈端其他的给抛出栈外 直接启动该Activity实例

那么我们假设Second的启动模式为singleTas那么内存图为:

4,singleInstance

该模式不管在任何情况只会生成一个Activity实例。并且和其他的不同的是该启动模式的Activity会单独创建一个栈只会保存自己,当启动该Acitivity会从单独栈区启动到界面。其他的任务栈区依然是不变

那么我们假设Second的启动模式为singleInstance那么内存图为:


阅读更多
版权声明:范明毅的个人博客,欢迎转载,转载请注明出处 https://blog.csdn.net/qfanmingyiq/article/details/52351836
个人分类: 安卓学习之旅
上一篇java自带线程池和队列详细讲解
下一篇06 获取Activity的栈管理器
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭