zoukankan      html  css  js  c++  java
  • launchMode之的几种取值

    Activity的launchMode


    launchMode之standard
      ·标准模式。每次激活Activity时均在当前任务栈中创建新的实例。


    在配置文件里把activity节点的属性配置为  android:launchMode="standard" (能够不用配置,由于默认是standard)
    标准模式特性:
    每次激活Activity,
    taskid同样(即:表示每次激活Activity。是同一个任务栈。每次点击回退会依照后进先出的顺序出栈)
    hashcode每次都不同(表示每次激活一次Activity都会创建一个新的实例)


    launchMode之singleTop
        ·singleTop
        ·位于栈顶时唯一,假设当前Activity已位于当前任务栈的栈顶,则再次激活该Activity也不会创建新的实例


    launchMode之singleTask
    ·singleTask
    (1)独立于任务栈,假设该singleTaskActivity的实例不存在,则激活时会创建并获得栈顶位置。
    (2)假设singleTaskActivity的实例已经存在,激活时不会创建新的singTaskActivity实例,且原来已经存在的singTaskActivity上方的Activity均出栈,原来的这个singTaskActivity获得栈顶位置。




    一句话就是:singTaskActivity要么不存在要么仅仅有一个实例,激活时。肯定在栈顶位置,前面若有Activity时会被“挤”出站(被销毁)


    launchMode之singleInstance(单例的)
    ·singleInstance
    ·实例唯一,不管哪个Task,共享同一个Activity的实例。
    ·该Activity有独立的Task(独占一个Task),且在Task中唯一,由该Activity激活的其他Activity归属于其他Task


    singleInstance与taskAffinity


    由被配置为singleInstance的Activity激活的其他Activity。会尝试放在
    存在“亲属”关系的Task中。假设没有匹配的Task存在。则会创建新的Task存放被激活的Activity。

  • 相关阅读:
    dpdk学习笔记2
    <c和指针>学习笔记2之数据和语句
    dpdk数据包捕获技术笔记1
    <c++primer plus>学习笔记1之第八章函数探幽
    准备面试的那些事儿1
    tcp_fast_open的概念 作用以及实现(转)
    tcp/ip详解(转)
    Build step 'Execute Windows batch command' marked build as failure
    vmware12如何安装macOSX虚拟机
    如何将exe注册为windows服务,直接从后台运行
  • 原文地址:https://www.cnblogs.com/jzssuanfa/p/7253995.html
Copyright © 2011-2022 走看看