[Android实例] 同一Activity的实例被多次重复创建

如此这般配置即可。在AndroidManifest.xml文件中

<activity
            android:name="com.lxXxxxyActivity"
           android:launchMode="singleInstance" >
  </activity>


这样设置就好了。


在AndroidManifest.xml中的<activity>标签中可以配置android:launchMode属性,用来控制Actvity的启动模式
在Android系统中我们创建的Acitivity是以栈的形式呈现的,
每个应用都有独立的任务栈Task.一个栈中可以有多个Activity.
启动另一个应用的Activity,会把那个应用的栈也移到前面,(栈里面可能还有这个应用的其它的Activity)
standard:每次调用startActivity()启动时都会创建一个新的Activity放在栈顶
  注:默认都是这个模式
singleTop:启动Activity时,指定Activity不在栈顶就创建,如在栈顶,则不再创建
  注:不会出现两个相同的Activity相邻
singleTask:如果启动的Activity不存在就创建Activity,如果存在直接跳转到指定的Activity所在位置
  注:在其上面的Activity会被移出栈,也就是一个栈中不能有重复的Activity
singleInstance:如果启动的Activity不存在就创建一个Activity同时创建一个栈,如果存在就将指定的Activity存在的栈移动到栈顶
  注:表示这个Activity只能存在于一个独立的任务栈中,同应用的其它Activity与其无关.
阅读更多

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