本文主要来分享Activity节点中的相关配置。如有错误,欢迎指正。
\
**更多Android技术分享可以关注[我的Android技术圈子](https://gobixiu.com/community/10000996),也可以join in 扣扣群:690347536,交流Android开发技能。**
1. android:allowEmbedded
标识此Activity是否可作为其他Activity的嵌入式子项启动。
2. android:allowTaskReparenting
跟Application中同名属性作用一样,请参见之前标签详解分享。
3. android:alwaysRetainTaskState
系统是否始终保持Activity所在任务的状态。
4. android:autoRemoveFromRecents
是否不保留在最近打开应用的列表中。
5. android:banner
一般在AndroidTV中使用,为特定Activity提供默认banner图。
6. android:clearTaskOnLaunch
每当从主屏幕启动本应用时,是否清除根Activity之外的所有Activity。
7. android:colorMode
请求在兼容设备上以广色域模式显示Activity。
8. android:configChanges
在运行时发生配置变更时,默认情况下会关闭Activity并将其重启,但使用该属性声明配置将阻止Activity重启,相反,Activity会保持运行状态,并且系统会调用其onConfigurationChanged()回调方法。
density:显示密度发生变更(API>=24)。
fontScale:字体缩放系数发生变更。
keyboard:键盘类型发生变更。
keyboardHidden:键盘无障碍功能发生变更。
layoutDirection:布局方向发生变更。
locale:语言区域发生变更。
mcc:IMSI移动设备国家/地区代码(MCC)发生变更。
mnc:IMSI移动设备网络代码(MNC)发生变更。
orientation:屏幕方向发生变更。
screenLayout:屏幕布局发生变更(API>=13)。
smallestScreenSize:物理屏幕尺寸发生变更。
touchscreen:触摸屏发生变更。
uiMode:界面模式发生变更,比如夜间模式发生变更(API>=8)。
9. android:directBootAware
Activity是否支持在用户解锁时世界启动。
10. android:documentLaunchMode
指定每次启动任务时,应如何向其添加新的Activity实例。
11. android:enabled
Activity是否可以实例化。
12. android:excludeFromRecents
是否应从最近使用的应用列表中,排除该Activity启动的任务。
13. android:exported
此元素设置Activity是否可由其他应用的组件启动。
14. android:finishOnTaskLaunch
每次应用启动时,该Activity是否被结束掉。
15. android:hardwareAccelerated
是否启动硬件加速。
16. android:icon
Activity的图标。
17. android:immersive
设置Activity进行沉浸式模式。
18. android:label
Activity中显示的标签主要在Actionbar或ToolBar中显示。
19. android:launchMode
启动Activity模式。
standard:默认,系统时钟会在目标任务中创建新的Activity实例,并向其传送Intent。
singleTop:如果目标栈的顶部已存在Activity实例,系统会调用实例的onNewIntent(),否则会创建新实例,放入栈顶。
singleTask:如果目标栈中存在Activity实例,系统会清除该实例上面的其他Activity,并且会调用该实例的onNewIntent(),否则创建新实例放入目标栈。
singleInstance:与singleTask相同,但系统不会将其他任何Activity启动到包含此实例的栈中,该Activity始终是其栈中的唯一Activity。
20. android:lockTaskMode
确定当设备在锁定任务模式下运行时,系统如何显示此Activity。
21. android:maxRecents
最近任务列表中位于此Activity根位置处的最大任务数。
22. android:maxAspectRatio
Activity支持的最大纵横比。
23. android:multiprocess
是否可以实例到其他进程中。
24. android:name
Activity的完整类名。
25. android:noHistory
当用户离开Activity且屏幕上不再显示该Activity时,是否应从Activity堆栈中将其移除并调用finish()方法。
26. android:parentActivityName
Activity逻辑父项的类名称。
27. android:persistableMode
定义当设备重启时,如何在包含任务中保留Activity实例。
persistRootOnly:默认值,系统重启时会保留Activity任务,但仅使用根Activity的启动Intent。(只有在应用的根Activity上设置此属性值后,该值才会影响应用的行为)。
persistAcrossReboots:系统将保留此Activity的状态,以及在此Activity之上的栈内的并且也设置了此属性值的Activity的状态。
persistNever:系统不会保留Activity的状态。
28. android:permission
启动Activity时需要的权限。
29. android:process
Activity运行进程的名称。
30. android:relinquishTaskIdentity
Activity是否会将其任务标识符交给任务栈中在其之上的Activity。
31. android:resizeableActivity
是否支持多窗口。
32. android:screenOrientation
Activity显示的方向。
unspecified:默认值,由系统选择方向。
behind:与Activity栈中紧接其后的Activity的方向相同。
landscape:横向。
portrait:纵向。
reverseLandscape:与正常横向相反的横向。
reversePortrait:与正常纵向相反的纵向。
senserLandscape:横向,但可根据设备传感器调整为正常或反向的横向。
senserPortrait:纵向,但可根据设备传感器调整为正常或反向的纵向。
userLandscape:横向,但可根据传感器和用户首选项调整正常或反向的横向。
userPortrait:纵向,但可根据传感器和用户首选项调整正常或反向的纵向。
senser:由设备传感器决定方向。
fullsenser:由使用4种方向中任一方向的设备方向传感器决定。
nosenser:与物理方向传感器无关。
user:用户当前首选方向。
fullUser:如果用户锁定基于传感器的旋转,则其行为与user相同,否则其行为与fullSenser相同。
locked:将屏幕方向锁定为其当前任意旋转方向。(API>=18)
33. android:showForAllUsers
当设备的当前用户不是启动Activity的用户时,是否显示Activity。
34. android:stateNotNeeded
在不保存Activity状态的情况下,能否终止并成功重启Activity。
35. android:supportsPictureInPicture
是否支持画中画。
36. android:taskAffinity
Activity所属的栈名。
37. android:theme
Activity的主题。
38. android:uiOptions
针对ActivityUI的附加选项。
none:默认值,无界面选项。
splitActionBarWhenNarrow:当水平空间受限制,在屏幕底部添加一栏,以显示应用栏中的操作项。
39. android:windowSoftInputMode
Activity的主窗口与包含软键盘窗口之间的交互方式。
stateUnspecified:不指定软键盘的状态,系统会选择合适的状态,或依赖主题中的设置,对软键盘的默认值。
stateUnchanged:当Activity转至前台时保留软键盘最后所处的状态。
stateHidden:当用户选择Activity时,隐藏软键盘。
stateAlwaysHidden:当Activity的主窗口有输入焦点时始终隐藏软键盘。
stateVisible:在正常的适宜情况下显示软键盘。
stateAlwaysVisible:当用户选择Activity时,显示软键盘。
adjustUnspecified:不指定Activity的主窗口是否通过调整尺寸为软键盘腾出空间,或者是否通过平移窗口内容以在屏幕上显示当前焦点,这是对主窗口行为的默认设置。
adjustResize:始终调整Activity主窗口尺寸,为软键盘腾出空间。
adjustPan:不通过调整Activity主窗口的尺寸为软键盘腾出空间,但窗口内容会自动平移,使软键盘无法遮挡当前焦点,以便用户始终能看到自己输入的内容。
**更多Android技术分享可以关注[我的Android技术圈子](https://gobixiu.com/community/10000996),也可以join in 扣扣群:690347536,交流Android开发技能。**