更多内容在这里查看

https://ahangchen.gitbooks.io/windy-afternoon/content/

总共有四篇关于Activity,task,launchMode的文章,可以在我的博客中查看,或者在文章底部点下一篇。

1.Standard

默认模式,多次实例化,按序入栈出栈。

2.SingleTop

栈顶Activity不会被重复创建,会触发onNewIntent()事件,不在栈顶时可以多次实例化。

3.SingleTask

Developer.android.com的说法:

(1)新建一个task,创建一个Activity;

(2)如果存在一个不同的task包含这个Activity的实例,会切换到这个task,将这个Activity以上的Activity弹出,并且触发这个Activity的onNewIntent事件;

(2)描述了不会新建task的情况,但是:

实验发现2前提条件,有一点问题:

(1)“包含这个Activity的实例”不是必要条件:

如果没有一个task包含这个Activity的实例,但是,存在一个task包含与这个Activity属于同一个App的其他Activity的实例,这时不会新建task,而是切换到这个task中,在这个task中新建这个Activity。

(2) “不同的task”不是必要条件:

如果不存在一个不同的task包含这个Activity的实例,但是在当前的task中本身就存在这个Activity实例,不会新建task,而会在当前task中,将这个Activity以上的Activity弹出,并且触发这个Activity的onNewIntent事件;

4.SingleInstance

(1)如果没有一个task包含这个Activity的实例,会新建一个task,创建一个Activity;

(2)如果存在一个task包含这个Activity的实例,会切换到这个task,并且触发这个Activity的onNewIntent事件,Activity独占task。没有描述弹出其他Activity的必要。

(3)在包含这个Activity的task中,仅包含这个一个Activity,如果需要打开新的Activity,必须在其他task中打开,如果新建了task,task的根activity为新打开的这个Activity,之后打开这个Activity时,都不会新建Activity,只会将这个task带到前台。

总共有四篇关于Activity,task,launchMode的文章,可以在我的博客中查看,或者直接点下一篇。

Activity四种launchMode的更多相关文章

  1. Activity 四种launchMode

    launchMode在多个Activity跳转的过程中扮演着重要的角色,它可以决定是否生成新的Activity实例,是否重用已存在的 Activity实例,是否和其他Activity实例公用一个tas ...

  2. Activity的四种launchMode《转》

    转自:http://blog.csdn.net/liuhe688/article/details/6754323/ Activity的四种launchMode. launchMode在多个Activi ...

  3. Activity的四种launchMode

    来源:http://blog.csdn.net/liuhe688/article/details/6754323/ 我们今天要讲的是Activity的四种launchMode. launchMode在 ...

  4. Activity的四种launchMode 详细分析

    launchMode在多个Activity跳转的过程中扮演着重要的角色,它可以决定是否生成新的Activity实例,是否重用已存在的 Activity实例,是否和其他Activity实例公用一个tas ...

  5. 基础总结篇之二:Activity的四种launchMode

    合抱之木,生於毫末:九層之台,起於累土:千里之行,始於足下.<老子> 今天在社区看到有朋友问“如何在半年内成为顶级架构师”,有网友道“关灯睡觉,不用半年的...”,的确,做梦还来的快一些. ...

  6. 详解Android开发中Activity的四种launchMode

    Activity栈主要用于管理Activity的切换.当使用Intent跳转至某个目标Activity,需要根据目标Activity的加载模式来加载. Activity一共有以下四种launchMod ...

  7. 转 Activity的四种LaunchMode(写的真心不错,建议大家都看看)

      我们今天要讲的是Activity的四种launchMode. launchMode在多个Activity跳转的过程中扮演着重要的角色,它可以决定是否生成新的Activity实例,是否重用已存在的 ...

  8. 基础总结篇之二:Activity的四种launchMode (转载)

    转自:http://blog.csdn.net/liuhe688/article/details/6754323 合抱之木,生於毫末:九層之台,起於累土:千里之行,始於足下.<老子> 今天 ...

  9. Android Activity 四种启动模式

    task和back stack(任务和回退栈) 任务启动,task被加入到回退栈的栈顶,返回的时候回退栈的栈顶任务会被弹出,并被销毁,栈中的前一任务恢复运行,当activity销毁是,系统不会保留ac ...

随机推荐

  1. Apache-Tomcat 和 Apache-Maven配置

    1.1.下载安装文件 官网对应版本下载,例:apache-tomcat-8.0.35-windows-x64.zip 1.2.指定对应的安装目录: 例:D:\JavaSoft\apache-tomca ...

  2. WebApp 里Meta标签大全

    1.先说说mate标签里的viewport: viewport即可视区域,对于桌面浏览器而言,viewport指的就是除去所有工具栏.状态栏.滚动条等等之后用于看网页的区域.对于传统WEB页面来说,9 ...

  3. 【转】MUD教程--巫师入门教程4

    我们再次复习一下clean_up()函数返回1的含义,如果clean_up()函数返回1,则MUDOS在这一次的调用时不会做其的任何举动,但到了下一次想调用的时间里,还将再次调用这个对象的clean_ ...

  4. skynet配置文件

    启动skynet需要一个配置文件 我们看下examples/config root = "./"         表示根目录是skynet启动时的目录thread = 8     ...

  5. JQuery DataTables Editor---只修改页面内容

    近来在工作中需要对JQuery DataTables进行增,删,改的操作,在网上找了一些资料,感觉比较的好的就是(http://editor.datatables.net/)文章中所展示的操作方法(如 ...

  6. Nlog、elasticsearch、Kibana以及logstash

    Nlog.elasticsearch.Kibana以及logstash 前言 最近在做文档管理中,需要记录每个管理员以及用户在使用过程中的所有操作记录,本来是通过EF直接将操作数据记录在数据库中,在查 ...

  7. Qt widgets

    1,Qt部件Widgets--CheckWidgets,安置其他部件的Widgets,让用户选择数值的部件 选择部件---使用户能够从预定义的条目菜单中做出选择,combination QListBo ...

  8. const和define的区别

    1.在使用const定义常量时,只能使用标量初始化; 但我们可以使用任何表达式初始化define定义的常量 2.我们可以在条件表达式中使用define定义常量,但绝对不能使用const eg: def ...

  9. P酱的冒险旅途(思维)

    P酱的冒险旅途 Time Limit: 3000/1000MS (Java/Others)     Memory Limit: 65535/65535KB (Java/Others) Submit S ...

  10. 矩形嵌套(LIS)

    矩形嵌套 时间限制:3000 ms  |  内存限制:65535 KB 难度:4   描述 有n个矩形,每个矩形可以用a,b来描述,表示长和宽.矩形X(a,b)可以嵌套在矩形Y(c,d)中当且仅当a& ...