【希望大家分享一下对这两个flag的用法、谢谢】
先看一下这两个的官方解释
一、FLAG_ACTIVITY_SINGLE_TOP
/**
* If set, the activity will not be launched if it is already running
* at the top of the history stack.
*/
public static final int FLAG_ACTIVITY_SINGLE_TOP = 0x20000000;
个人理解为:
startActivity如果设置flag为 FLAG_ACTIVITY_SINGLE_TOP
当目标activity在stack的顶部的时候 不会重新被创建
二、FLAG_ACTIVITY_CLEAR_TOP
看官方解释
如果设置了FLAG_ACTIVITY_CLEAR_TOP 并且。目标Activity已经在当前的task中启动。那么不会launch一个新的Activity实例。
同时目标Activity之上的所有Activity将会被destroy 并且目标Activity会接受一个新的intent
?????????????可是用过之后感觉我理解错了。。。。
/**
* If set, and the activity being launched is already running in the
* current task, then instead of launching a new instance of that activity,