您的位置:首页 > 产品设计 > UI/UE

android:clearTaskOnLaunch=true 和android:finishTaskOnLaunch=true

2016-06-21 11:23 423 查看
android:clearTaskOnLaunch=true

这个属性用来标记是否从task清除除根Activity之外的所有的Activity,“true”表示清除,“false”表示不清除,默认为“false”。同样,这个属性也只对根Activity起作用,其他的Activity都会被忽略。

如果设置了这个属性为“true”,每次用户重新启动这个应用时,都只会看到根Activity,task中的其他Activity都会被清除出栈。如果我们的应用中引用到了其他应用的Activity,这些Activity设置了allowTaskReparenting属性为“true”,则它们会被重新宿主到有共同affinity的task中。

android:clearTaskOnLaunch=true 只放在一个activity Task 的root activity有效,在其他activity设置就无效。

 android:finishTaskOnLaunch=true 放 root activity就无效,放在一个 Task 的其他activity就有效。

android:clearTaskOnLaunch=true

当返回到这个Task时(如按home,在进入到这个Task时) ,除了root activity其他的activity都会被销毁。

android:finishTaskOnLaunch=true

当返回到这个Task时,该activity会被销毁,其他的不会被销毁。

关于android:clearTaskOnLaunch使用测试,有两种情况 :

Activity A(启动界面.android:clearTaskOnLaunch = true)

Activity B

启动A后,再点击按钮启动B,点击home键,返回到home screen 。(A、B属于同一个栈)

a.长按home键,在recent中点击应用图标,显示B界面。

b.再点击应用图标,显示A界面

更多请参考:http://www.cnblogs.com/lwbqqyumidi/p/3775479.html

http://stackoverflow.com/questions/5308088/kill-all-activities-when-home-key-is-pressed-android

4000
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: