activity的启动模式

1:singleTop

拥有此属性的activity被启动时,当栈中已有此activity的实例并存在于栈顶时,会重用此实例(会调用onNewIntent),当此实例不存在于栈顶时,会重新创建一个实例,并置于栈顶,此时任务栈中存在此activity的两个实例。

2:singleTask

当拥有此属性的activity被启动时,如果任务栈中有activity的实例,不管是否存在于栈顶都会重用此实例并将其置于栈顶,如果原来不存在于栈顶,那么会将存在于此activity以上的其他页面都弹出任务栈,直到此activity置于栈顶。

3:singleInstance

在一个新的任务栈中启动拥有此属性的activity,如果应用中已存在此activity的实例,会重用,多个任务栈或者activity启动他,都会重用原来的实例(会掉用onNewIntent)。
不要让中间activity拥有此属性,否则跳转会有问题,当完全退出后再进入时,进入的会是中间类。

4:standard

android默认的activity启动模式,每次启动都会创建一个新的实例并放入任务栈中。

你可能感兴趣的:(activity的启动模式)