zoukankan      html  css  js  c++  java
  • Android [启动方式:standard singleTop singleTask singleInstance]

    栈顶Activity是当前正在显示的。

    以A、B举例

    1.standard

      不同的Activity都存放在同一个栈中,每次创建实例都会堆放到栈顶,逐次返回直至退出。

      

                                              

     

    创建实例B

     

    创建实例A

     

     点击返回时,从栈顶依次销毁,直至栈空返回桌面。

    2.singleTop

      同样是不同的Activity存放在同一个栈,

      1)若A在栈顶,想创建一个新的实例A则不会成功 

      2)若A不在栈顶,再创建一个新的实例A,在栈顶会产生一个新的实例A

     

    创建实例A

     

    点击返回时,从栈顶依次销毁,直至栈空返回桌面。

    3.singleTask

      不同的Activity存放在同一个栈,

      1)若A在栈顶,再创建一个新实例A不会成功

      2)若A不在栈顶,创建一个实例A则会回到原来的栈中存在的实例A,A成为栈顶,A之上的实例全部移除。

     

    创建实例A

     

    B与C移除。

    点击返回时,从栈顶依次销毁,直至栈空返回桌面。

    4.singleInstance

      不同的栈存在不同的栈中。

      1)若A在栈顶,创建一个新的实例A不会成功。

      2)若B仍未被创建,则新创建的实例B会存放在一个新的栈中。

     

    创建实例B

      3) 如果此时B的实例已存在且我们在B的页面中创建新的A实例时,不会创建新的A实例,

        页面跳转到原来任务栈中存在的A的实例,存放B实例的任务栈仍然存在

        点击返回,依次销毁任务栈,直至返回桌面。

  • 相关阅读:
    vim常用命令
    MYSQL用户管理
    RPM 命令
    Windows下使用xShell向远程Linux上传文件
    Linux PHP 安装过程出现的错误
    完整的 http 错误代码含义解释
    Linux gzip压缩输出
    高性能Mysql主从架构的复制原理及配置详解
    Mybatis多个参数传值方法
    jsp 九大内置对象和其作用详解
  • 原文地址:https://www.cnblogs.com/zlc364624/p/10738383.html
Copyright © 2011-2022 走看看