Xml文件里Activity标签属性

  • Post author:
  • Post category:其他



Xml文件里Activity标签属性


<activity>


包含在:


<application>



能包含:


<intent-filter>

<meta-data>

描述:

声明一个Activity(一个Activity子类),用来实现app的可见用户接口部分。所有的Activity都必须表现成manifest文件的<activity>元素。任何没有声明在manifest文件里的Activity将不会被系统看见,并且将永远不会运行。

属性:


android:



allowTaskReparenting




当这个任务是下一个要带到前台的, activity是否能从它启动的任务移动到跟它有密切关系的任务里。--“true”它能移动,“false”它必须属于启动它的那个任务。

如果这个属性没有被设置,相应被设置在<application>元素里的

allowTaskReparenting


属性将适用于activity。默认值是“false”。


通常当一个activity被启动,它就被关联到启动这个activity的activity的任务里,并且整个生命周期都在那里。你能用这个属性来促使这个activity被重新定义到跟它有密切关系的任务里,在它的当前任务不再被显示时。典型地,它被用来引起一个app的activity被移动到这个app关联的主任务里。

例如,如果一个email消息包含一个网页链接,点击这个链接将会带来一个显示这个网页的activity。这个activity是被那个浏览器app定义的,但是它被启动作为email任务的一部分。如果这个activity被重定义在浏览器任务里,它将在浏览器任务下次来到前台时显示,并且在email再次来到前台时,它将不存在。

Activity的密切关系通




taskAffinity


属性定义。一个任务的密切关系是通过读取它的根activity的密切关系属性来决定的。因此,通过定义,一个根activity总是在具有相同密切关系的任务中。因为启动模式为“singleTask”或“singleInstance”的activity只能作为一个任务的根,重定义行为被限制在“standard”和“singleTop”模式里(也可以看启动模式属性)。



android:alwaysRetainTaskState


activity


所在的任务的状态是否将一直被系统保持—“true”被保持,




“false”允许系统在某些情况下重置它到它的初始状态。默认值是“false”。




这个属性只对一个任务的根activity有意义。在其他activity是被忽略的。



通常,当用户从HOME屏幕重新选择任务,系统会在某些情况下清理一个任务(移除所有来自于根activity上的栈的activity)。典型地,如果用户在一段时间内还没有访问这个任务,比如30分钟,那么系统就会清理这个任务。


然而,当这个属性是“true”时,用户将总会返回到那个任务的最后一个状态,无论他们如何到达这里。这是有用的,例如,在一个像浏览器这样的app里,有大量的状态(比如打开的多个标签)用户不想要丢弃。


android:clearTaskOnLaunch


每当任务从HOME屏幕重启时,是否所有activity被从任务移除,除了根activity—“true”任务总是被剥离到它的根activity, “false”不会剥离。默认值是“false”。这个属性只对启动一个新任务的activity(根activity)有意义。对于任务里的其他activity是被忽略的。



当这个值是“true”时,每次用户再次启动任务时,他们都会被带到这个任务的根activity里,无论它们最后在任务里做了什么,并且无论他们用back键或H



版权声明:本文为wusuobupo原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。