Android XML属性详解与应用

需积分: 10 2 下载量 124 浏览量 更新于2024-09-13 1 收藏 31KB DOC 举报
"这篇文档汇总了关于Android XML属性的一些关键信息,主要集中在Activity相关的属性上,包括activity如何处理任务切换、状态保留、配置变化、可访问性以及启动模式等方面。这些属性对于理解和优化Android应用的行为至关重要。" Android Activity属性详解: 1. android:allowTaskReparenting:此属性决定activity是否能从当前任务移动到另一个任务,例如,从一个应用的activity切换到另一个应用的activity,而不会丢失其当前状态。 2. android:alwaysRetainTaskState:若设置为true,即使用户离开并重新进入任务,activity也会保持之前的状态,提供更好的用户体验。 3. android:clearTaskOnLaunch:当用户从主屏幕重新启动一个任务时,此属性控制是否清除该任务的所有先前活动,只保留根活动(通常是启动activity)。 4. android:configChanges:用于指定哪些配置更改会导致系统调用activity的onConfigurationChanged()方法,如语言、导航方式或屏幕方向改变等。 5. android:enabled:决定activity是否可被系统实例化和用户使用。若设为false,则activity不可见且无法启动。 6. android:excludeFromRecents:若设为true,activity将不显示在最近应用列表中,用户无法通过此列表快速返回该activity。 7. android:exported:此属性决定了其他应用程序是否可以启动或与这个activity交互。默认情况下,只有同一应用内的组件可以互相调用,除非设置为true。 8. android:finishOnTaskLaunch:当用户重新启动任务时,如果此属性为true,所有先前的activity都会被关闭。 9. android:icon:定义activity的图标,通常显示在启动器、任务列表或其他UI元素中。 10. android:label:设置activity的标签,通常用于在系统UI中显示activity的名称或描述。 11. android:launchMode:定义activity的启动模式,有四种类型:"standard"(默认,每次启动都会创建新的实例)、"singleTop"(如果已经在栈顶,则重用现有实例)、"singleTask"(在整个任务中只有一个实例)和"singleInstance"(单独在一个进程和任务中运行)。 12. android:multiprocess:允许activity在不同的进程中运行,这可能会影响内存管理和并发行为。 13. android:name:指定activity的全限定类名,这是必需的属性,系统根据此名称实例化activity。 14. android:noHistory:如果设置为true,当用户离开activity时,系统会从历史记录中移除它,用户无法通过按返回键回到该activity(API level 3引入)。 15. android:permission:指定访问activity所需的权限,其他应用只有获得相应权限才能启动或与之交互。 16. android:process:定义activity运行的进程名称。默认情况下,所有组件在同一进程中运行,但通过此属性可以将特定activity放入独立的进程。 注意,如果进程名以":"开头,系统会创建一个专属进程,而以小写字母开头则会在现有进程中运行。使用多个进程可以提高应用的隔离性和并发性,但也可能增加资源消耗。 这些XML属性是构建Android应用时不可或缺的部分,理解并正确使用它们对于实现预期的activity行为和优化性能至关重要。在开发过程中,开发者应根据需求和性能考虑来调整这些属性的设置。