您的位置:首页 > 移动开发 > Android开发

android 关于启动模式的进一步理解

2016-04-04 14:58 531 查看
目前在AndroidManifest.xml的配置启动分为四中:

         (1).standard:标准模式,就是一般启动Activity的那种默认模式,每一次启动,他都会创建一个实例,不管他是否存在,都会创建。它的实例会保存在他默认条件下的栈里。

  注意:如果当前的Activity是通过Application启动的,他会报错:------------理由是:standard模式的Activity会进入启动它的栈,但是,由于是非Activity类型的context,并没有对应的栈,就会出错,解决这个问题方法是在为待启动的Activity添加指定FLAG_ACTIVITY_NEW_TASK标记,这个时候,实际上的Activity是以singleTask为启动模式

         (2)singleTask:栈内复用模式,在这种模式下,如果Acyivity位于栈顶,他就不会创建,若Activity没有没有位于栈顶,这样的话,按照栈“先进后出”原则,将会将后面的实例移除,直到当前的实例位于栈顶为止。

        (3)singleTop:栈顶复用模式:在这种模式下,如果是新的Activity位于没有位于栈顶,它就会创建新的实例.

          (4)singleIntance:单实例模式,它除具有singleTask的所有特性外,唯一一个区别就在于,它只能拥有一个单独的任务栈。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: