首先需要明白任务栈:
栈是先进后出,activity才用不同的启动模式,当每次访问他时会采取完全不同的操作。
1、标准模式
<activiry android:name=”.MainActiviry”
android:launchMode=”standard” />
每次访问activity都会再栈内创建一个实例
2、栈顶模式--singleTop
如果访问一个activity时,该activity的时候刚好在栈顶,那么不会再次实例化对象,而是访问这个栈顶已经存在的实例,比如一个activity设置的是栈顶模式,当在他自己界面再往自己界面跳转的时候就不会再实例化一个自己实例出来。
3、singleTask
如果你访问的这个activity,已经在栈中有了一个实例,那么就不会再次生成activity的实例,而是访问这个已经在栈中存在的实例,并且将所有在该栈上面的activity全部移除,这样它就是在栈顶了。
4、单例模式--singleInstance
比如浏览器,如果一个程序打开了浏览器,另外一个程序又要打开浏览器,那么就会跳转到已经打开的浏览器界面,这样可以避免资源的浪费。
相关推荐
Android的Activity一共有4中启动模式分别是:standard、singleTop、singleTask、singleInstance。资源是该例子的项目,直接导入项目即可。
在Android中每个界面都是一个Activity,切换界面操作其实是多个不同Activity之间的实例化操作。在Android中Activity的启动模式决定了Activity的启动运行方式。 本文档讲解Android中Activity的启动模式
Android组件Activity四种启动模式的介绍与使用方法
android activity4种启动模式测试 一个演示启动模式的demo,结合博文,可以很方便的熟悉各种启动模式之间的差异。
activity四种启动模式,
# Android中Activity四种启动模式和taskAffinity属性详解 #
Android Activity 的四种启动模式 lunchMode 和 Intent.setFlags()
Android中Activity的四种启动模式案例!
Android Activity的四种启动模式及其应用场景 https://blog.csdn.net/qq_31939617/article/details/80696728
android activity启动模式:standard、singleTop、singleTask、singleInstance详解
Activity启动模式设置: <activity android:name=".MainActivity"android:launchMode="standard" /> Activity的四种启动模式: 1.standard 模式启动模式,每次激活Activity时都会创建Activity,并放入任务栈中。 ...
本节课程内容:Activity启动模式与跳转 Android中采用任务栈的形式来管Activity。栈是一种“先进后出”的数据结构。 Android中的任务栈 Task Stack in Android Activity的启动模式 Activity startup mode Activity...
此篇博客意在让对启动模式不了解的开发者对其有一个较为形象的认识,至于深入探究,笔者还是推荐去看任玉刚前辈所写的《android开发艺术探索》了。 网上对Activity的启动模式讲解的博客有很多,但是大部分都需要掌握...
Android编程中经常涉及到页面的切换,启动一个新的页面(或者说Activity)的时候需要为其指定合适的“启动模式”。指定的启动模式不合适,会出现类似下面这种奇怪的效果: 你拿起QQ切换了一个新的账号,一直按返回却...
Activity启动模式设置:1.standard模式启动模式,每次激活Activity时都会创建Activity,并放入任务栈中。2.singleTop如果在任务的栈顶正好存在该Activity的实例,就重用该实例,否者就会创建新的实例并放入栈顶(即使...
android开发中activity不同启动模式的学习,通过不同的activity启动,会在activity中显示task ID 和Android 实例,方便学习activity的启动模式。
Activity7大生命周期与4种启动模式(standard,singleTop,singleTask,singleIntance)
Android 有四种启动模式, 分别是 standard、singleTop、singleTask 、singleInstance 这个Demo实现了其中的三个启动模式