Intent 的Flag属性可用来控制Activity在栈中的排列位置,本文列举了常见的Flag.

例--(以无动画方式启动ActivityB):
Intent intent=new Intent(ActivityA.this , ActivityB.class);
intent,setFlag(FLAG_ACTIVITY_NO_ANIMATION);
startActivity(intent);

FLAG_ACTMTY_BROUGHT_TO_FRONT:

如特通过该Flag启动的Activity已经存在。下次再次启动时。将仅仅是将该Activity带到前行。

比如现存Activity栈中有Activity A,此时以该旗标启动Activity B(即Activity B是以FLAG_ACTMTY_BROUGHT_TO_FRONT旗标启动的)。然后在Activity B中启动C、D。假设此时在Activity D中再启动B。将直接把Activity栈中的Activity B带到前台。

此时Activity栈中情形是A、C、D、B。

FLAG_ACTIVITY_CLEAR_TOP:

该Flag相当于载入模式中的singleTask,通过这样的Flag启动的Activity将会把要启动的Activity之外的Activity所有弹出Activity栈。比如,Activity栈中包括A、B、C、D这4个Activity,假设採用该Flag从ActivityD跳转到ActivityB,此时Activity栈中仅仅包括A、B两个Activity。

FLAG_ACTMTY_NEW_TASK:

默认的启动旗标,该旗标控制又一次创建一个新的Activity。

FLAG_ACTIVITY_NO_ANIMATION:

该旗标会控制启动Activity时不使用过渡动画。

FLAG_ACTIVITY_NO_HlSTORY:

该旗标控制被启动的Activity将不会保留在Activity栈中。比如Activity栈中原来有A、B、C这三个Activity,此时在Activity C中以该Flag启动Activity D,Activity D再启动Activity E,此时Activity中仅仅有A、B、C、E这4个Activity,Activity D不会保留在Actvity栈中。

FIAG_ACTIVITY_REORDER_TO_FRONT:

该Flag控制假设当前已有该Activtity,直接将该Activity带到前台。比如如今Activity栈中有A、B.C、D这4个Activity。假设使用FIAG_ACTIVITY_REORDER_TO_FRONT旗标来启动Activity B。那么启动后的Activity栈中情形为A、C、D、B。

FLAG_ACTIVITY_SINGLE_TOP:

该Flag相当于载入模式中的singleTop模式,比如原来是A、B、C、D这4个Activity,在Activity D中再次启Activity D依旧还是A、B、C、D这4个Activity。

Intent 的Flag属性(Activity在栈位置的主宰者)相关推荐

  1. Android之关于Intent的Flag属性的讲解

    以下是今天讲解Intent的Flag属性的列表: FLAG_ACTIVITY_BROUGHT_TO_FRONT FLAG_ACTIVITY_CLEAR_TOP FLAG_ACTIVITY_NEW_TA ...

  2. Activity栈管理(三):Intent的Flag与taskAffinity

    作者:anly_jun 链接:https://www.jianshu.com/p/c97688eb5056 引用上文生命周期和launchMode介绍, Activity的生命周期实际上比我们想象的复 ...

  3. Activity、Task、Application关系+Intent启动Flag

    什么是Android  Application? 简单来说,一个apk文件就是一个Application. 任何一个AndroidApplication基本上是由一些Activities组成,当用户与 ...

  4. Activity Intent相关FLAG介绍

    先首先简单介绍下Task和Activity的关系 Task就像一个容器,而Activity就相当与填充这个容器的东西,第一个东西(Activity)则会处于最下面,最后添加的东西(Activity)则 ...

  5. android 之 Activity管理与Intent的六大属性

    Task的概念: 任务(Task):为了完成一个目标而产生的多个Activity的集合 Back Stack 回退(返回)栈:一个先进后出的数据结构,用来存储完成目标所需要的Activity的集合 A ...

  6. android之Intent的七大属性

    Intent用于封装程序的"调用意图".两个Activity之间,可以把需要交换的数据,封装成Bundle对象,然后使用Intent对象,携带数据到另一个Activity中.实现两 ...

  7. Intent的FLAG标志详解

    在Android开发中,Intent想必大家经常用.Intent本意为目的.意向.意图.在Android中,Intent是系统各组件(或应用程序)之间进行数据传递的数据附载者,Intent不仅可以用于 ...

  8. Android零基础入门第77节:Activity任务栈和启动模式

    2019独角兽企业重金招聘Python工程师标准>>> 通过前面的学习,Activity的基本使用都已掌握,接下来一起来学习更高级的一些内容. Android采用任务栈(Task)的 ...

  9. 使用dumpsys检测Activity任务栈

    原文出处:http://blog.iderzheng.com/debug-activity-task-stack-with-adb-shell-dumpsys/ 谈起Android程序开发,就需要了解 ...

最新文章

  1. [k8s] 第一章 十分钟带你理解Kubernetes核心概念
  2. 计算机里面有鬼的恐怖游戏,2018年度十大最佳PC恐怖游戏
  3. 从AK47到乌兹,这款控制器模块可以模拟不同物体体感
  4. Altium Designer 隐藏铺铜
  5. Oracle-数据泵expdp/impdp实操
  6. Mysql:kill命令之mysql杀死指定的进程(批操作)
  7. FluentEmail - 适用于 .NET 和 .NET Core 的邮件发送库
  8. .NET Core使用gRPC打造服务间通信基础设施
  9. 熊吃人该不该杀?这头3米高的大熊吃了7个人,还在洞里藏了很多女人用的东西.........
  10. hdu 1892【二维树状数组】
  11. 华科02年计算机考研复试机试
  12. Linux串口编程(中断方式和select方式)
  13. 【毕业设计】asp.net基于工作流引擎的系统框架设计开发(源代码+论文)
  14. itext 生成pdf 输出特殊符号_JAVA提取PDF内容及转换PDF为图片
  15. Nginx: 104: Connection reset by peer 错误
  16. 咕咕王小谢的C语言之路————第一章 初遇C语言 第三集 变量与常量
  17. springboot与mybatis整合
  18. 007.复原 IP 地址
  19. python经典书记必读:Python编程快速上手 让繁琐工作自动化
  20. vue 修改模板{{}}标签_vue.js - Vue单文件的template标签

热门文章

  1. [译] Swift 中的惰性序列及其原理
  2. ECMAScript6变量的解构赋值
  3. ESLint 配置说明
  4. Java基础学习总结(23)——GUI编程
  5. Spring Cloud Config-Git后端
  6. WinForm界面开发之“HTML内容编辑控件”
  7. OpenCV 静态链接 libstdc++
  8. jquery实现上传图片及图片大小验证、图片预览效果代码
  9. 4.性能下降原因和常见的Join查询
  10. apache hadoop 2.4.0 64bit 在windows8.1下直接安装指南(无需虚拟机和cygwin)