Activity的启动模式
2017-03-20 本文已影响0人
khanka
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
...
...
<activity android:name="com.itheima.launchmode.SecondActivity"
//配置android:launchMode属性
android:launchMode="singleTop" >
</activity>
</application>
1、standard:标准的启动模式
默认应用场景
standar.png
2、singleTop:单一顶部模式
如果Activity已经被开启,并且处于任务栈的栈顶,就不会创建新的Activity,而是复用这个已经开启的Activity。
为了防止出现一些奇怪的用户体验,推荐使用单一顶部模式,整个任务栈可以有多个实例存在.
应用场景:短信发送界面
3、singletask:单一任务栈
在整个任务栈里面只允许有一个当前Activity的实例存在
如果要开启的Activity在任务栈中已经存在,直接复用这个已经存在的Activity,并且把这个Activity上面的所有的其他Activity给清空
应用场景:如果一个Activity非常消耗内存和cpu资源,建议把这个Activity做成singletask的模式。浏览器的browserActivity
4、singleinstance:单一实例.
整个手机操作系统只有一个实例存在,并且是运行在自己单独的任务栈里面.
应用场景:通话界面的Activity