分享

Intent的Flag | 应用开发笔记

 昵称11482448 2013-04-05


收集整理各种Flag的作用,只有用到新的再补充,所以这里的列表不是完整的,随时更新。
先是Flag的用法:

1
2
3
4
Intent it=new Intent();
it.setClass(Setting.this,Main.class);//从Setting跳转到Main
it.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);//加上Flag
startActivity(it);

根据上面的例子解释:
没有加Flag:如果没有Flag,上面的这段代码是新启动Main,不管是不是已经启动Main,这样在栈中从上往下的顺序就是Main,Setting,Main。这里有两个Main
FLAG_ACTIVITY_CLEAR_TOP:清除Main上面的所有Activity(包括Setting,所以这里就不用调用Setting的finish方法),如果Main已经启动了,重新启动,栈中从上往下顺序:Main
FLAG_ACTIVITY_REORDER_TO_FRONT:如果Main已经启动,则不会重新启动Main,而是把在后台没显示的Main带到最前面,栈中从上往下顺序:Main,Setting
FLAG_ACTIVITY_NO_HISTORY:启动Main后,如果再切换到其他Activity(包括按返回键、startActivity方法等),Main会自动调用finish方法,不会留在栈中。
FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS:启动过以后,在长按Home的跳出的最近启动程序中不会出现.

另,addFlags可添加多个Flag, setFlags可以通过|来设置多个Flag

2011, 冰冻鱼. 请尊重作者劳动成果,复制转载保留本站链接! 应用开发笔记


    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多