zoukankan      html  css  js  c++  java
  • Intent的属性及Intent-filter配置——Extra属性——Flag属性

         Intent的Extra属性通常用于在多个Action之间进行数据交换,Intent的Extra属性值应该是一个Bundle对象,Bundle对象的就像一个Map对象,它可以存入多组key-value对,这样可以就通过Intent在不同Activity不同之间进行数据交换了。

         Flag属性

         Intent的Flag属性用于为该Intent添加一些额外的控制游标,Intent可调用addFlags()方法来为Intent添加控制旗标。

         Intent包含了如下常用的Flag游标。

    • FLAG_ACTIVITY_BROUGHT_TO_FRONT:如果通过该Flag启动的Activity已经存在,下次再次启动时,将只是将该Activity带到前台。例如现在Activity栈中有Activity A,此时以该旗标启动Activity B(即Activity B是以FLAG_ACTIVITY_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从Activity D跳转到Activity B,此时Activity栈中只包含A、B两个Activity。
    • FLAG_ACTIVITY_VIEW_TASK:默认的启动旗标,该旗标控制重新创建一个新的Activity。
    • FLAG_ACTIVITY_NO_ANIMATION:该旗标会控制启动Activity时不使用过渡动画。
    • FLAG_ACTIVITY_NO_HISTORY:该旗标控制被启动的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不会保留在Activity栈中。
    • FLAG_ACTIVITY_REORDER_TO_FRONT:该Flag控制如果当前已有该Activity,直接将该Activity带到前台。例如现在Activity栈中有A、B、C、D这4个Activity,如果使用FLAG_ACTIVITY_REORDER_TO_FRONT旗标来启动Activity B,那么启动后的Activity栈中情形为A、C、D、B。
    • FLAG_ACTIVITY_SINGLE_TOP:该Flag相当于加载模式中的singleTop模式,例如原来Activity栈中有A、B、C、D这4个Activity,在Activity D中再次启动Activity D,Activity栈中依然还是A、B、C、D这4个Activity。 
  • 相关阅读:
    实习小白::(转) Cocos2d-x 3.0开发(五)关联程序逻辑与cocoStudio导出文件
    实习小白::(转)Cocos2d-x 3.0开发(六)使用cocoStudio创建一个骨骼动画
    实习小白::(转) Cocos2d-x 3.0 开发(七)在程序中处理cocoStudio导出动画
    实习小白::(转) cocos2d-x使用cocosStudio编辑的动画文件
    (转)cocos2d-x 每帧动画的播放设置一个监听函数的做法
    Filter
    使用Cookie记住用户名和密码
    动态规划
    热分布
    背包问题
  • 原文地址:https://www.cnblogs.com/wolipengbo/p/3428030.html
Copyright © 2011-2022 走看看