edit README.md
This commit is contained in:
20
README.md
20
README.md
@@ -27,14 +27,20 @@ Activity的默认模式,所有的Activity元素遵循先进后出的进栈出
|
|||||||
#3.SingleTask:栈内复用模式
|
#3.SingleTask:栈内复用模式
|
||||||
如果想要启动的Activity在当前栈内启动之后,该activity只会在任务栈里面存在一个实例。如果要再次打开这个activity,在任务栈里面如果已经存在,就不会创建新的activity,
|
如果想要启动的Activity在当前栈内启动之后,该activity只会在任务栈里面存在一个实例。如果要再次打开这个activity,在任务栈里面如果已经存在,就不会创建新的activity,
|
||||||
而是复用栈内的这个已经存在的activity,调用改Activity的 onNewIntent() 方法,并且清空这个activity任务栈上面所有的activity。
|
而是复用栈内的这个已经存在的activity,调用改Activity的 onNewIntent() 方法,并且清空这个activity任务栈上面所有的activity。
|
||||||
>例如A.B.C启动模式为Standard,C启动模式为SingleTop
|
>例如A.C.D启动模式为Standard,B启动模式为SingleTask
|
||||||
>启动顺序:A->B->C—>C
|
>启动顺序:A->B->C—>D—>B
|
||||||
>回退顺序:C->B->A.而不是C->C->B->A
|
>回退顺序:B->A.而不是B—>D->C->B->A
|
||||||
|
|
||||||
|

|
||||||
|
应用如下:如果从主页去登录,然后去注册,注册完成如果直接回去主页,可以将主页的launchMode设置为SingleTask。直接从注册跳到主页即可,不用去关心LoginActivity是否关闭,还是什么时候关闭。
|
||||||
|
|
||||||

|
|
||||||
应用如下:
|
|
||||||
|
|
||||||
#4.SingleInstance:单一实例模式
|
#4.SingleInstance:单一实例模式
|
||||||
在整个Android系统中(可能会有很多任务栈)里面只有一个实例存在。不同的应用程序app去启动这个activity,就会共享公用同一个activity。
|
在整个Android系统中(可能会有很多任务栈)里面只有一个实例存在。不同的应用程序app去启动这个activity,就会共享公用同一个activity。
|
||||||
他会运行在自己单独的的任务栈里面,并且这个单独的任务栈里面只会存在着一个实例。
|
他会运行在自己单独的的任务栈里面,并且这个单独的任务栈里面只会存在着一个实例。而且这个单独的任务栈会在最底层。
|
||||||
应用场景:系统的发短信,打电话,来电,浏览器等。这种模式在平时很少去使用,一般在Launcher中可能会用到。
|
应用场景:系统的发短信,打电话,来电,浏览器等。这种模式在平时很少去使用,一般在Launcher中可能会用到。
|
||||||
|
>例如A.C启动模式为Standard,B启动模式为SingleInstance
|
||||||
|
>启动顺序:A->B->C;注意:此时产生了两个任务栈,B产生了一个新的任务栈,并处于其他任务栈的下面。
|
||||||
|
>回退顺序:B->A.而不是B—>D->C->B->A
|
||||||
|
|
||||||
|

|
||||||
Reference in New Issue
Block a user