android:taskAffinity

这个属性用于跟Activity有亲缘关系的任务。带有相同亲缘关系的Activity,在概念上是属于相同任务的(从用户的角度看,它们是属于同一应用程序的)。任务的亲缘关系是通过它的根节点的Activity的亲缘关系来判定的。

亲缘关系决定了两件事情:1.Activity能否重新设定父任务(看allowTaskReparenting属性);2.这个任务能够包含用FLAG_ACTIVITY_NEW_TASK标记启动的Activity。

默认情况下,在一个应用程序中的所有Activity都有相同的亲缘关系。能够通过设置这个属性把Activity分到不同的组中。甚至能够把定义在不同应用程序中的Activity放到同一个任务中。要指定一个跟任何任务没有亲缘关系的Activity,就要把这个属性设置为空字符串。

如果这个属性没有设置,那么这个Activity会继承应用程序的亲缘关系(看<application>元素的taskAffinity属性)。应用程序默认的亲缘关系名称是由<manifest>元素的package属性设定包名。

android:theme

这个属性用于设定Activity整体主题,它会应用一个样式资源。系统会使用这个主题来自动的设置Activity的内容。

如果这个属性没有设置,Activity会继承应用程序的主题(<application>元素的theme属性)做它的整体样式。如果这个属性也没有设置,那么默认使用系统的主题。

android:uiOptions

这个属性用于设置Activity的UI的额外选项,它必须是下表中的一个值。

说明

none

默认设置,没有额外的UI选项。

splitActionBarWhenNarrow

在水平空间受到限制的时候,会在屏幕的底部添加一个用于显示ActionBar中操作项的栏,例如:在纵向的手持设备上。而不是在屏幕顶部的操作栏中显示少量的操作项。它会把操作栏分成上下两部分,顶部用于导航选择,底部用于操作项目。这样就会确保可用的合理空间不仅只是针对操作项目,而且还会在顶部给导航和标题留有空间。菜单项目不能被分开到两个栏中,它们要显示在一起。

这个属性在API Level 14中被引入。

android:windowSoftInputMode

这个属性用于设定Activity的主窗口与软件键盘的窗口如何交互。设置这个属性会影响以下两件事情:

1. 软键盘的状态---在Activity获取输入焦点时,软键盘是隐藏还是显示。

2. 调整Activity的主窗口---是调整Activity主窗口的大小,以便给软键盘腾出显示空间;还是在Activity窗口中的输入焦点被软键盘覆盖时,让Activity窗口中的内容平移,以便输入焦点能够显示给用户。

这个属性必须用下表中的一个值来设定,或者是一个state…的值和一个adjust…的值的组合。如:

<activityandroid:windowSoftInputMode="stateVisible|adjustResize" . . . >

这个属性设置的值会覆盖主题中设置的值。

说明

stateUnspecified

它不指定软键盘的状态(显示或隐藏)。系统会选择合适的状态,或者依赖主题中的设置。

它是软键盘行为的默认设置。

stateUnchanged

当Activity显示在前台时,软键盘会保持它最后的状态(显示或隐藏)

stateHidden

当用户选择这个Activity时,软键盘会隐藏。也就是说,当用户确认向前浏览到这个Activity的时候,而不是因为离开另一个Activity而返回这个Activity的时候。

stateAlwaysHidden

当Activity的主窗口有输入焦点时,软键盘会始终隐藏

stateVisible

在适当的时候(通常是用户浏览到这个Activity的主窗口),软键盘是可见的。

stateAlwaysVisible

当用户选择了这个Activity时,软键盘变的可见,也就是说,当用户确认向前浏览到这个Activity的时候,而不是因为离开另一个Activity而返回这个Activity的时候。

adjustUnspecified

这个值并不指定Activity的主窗口会软键盘的显示而进行大小的调整,也不会指定Activity的主窗口是否会平移,以便把因软键盘所遮挡的输入焦点显示给用户。系统会依赖内容窗口中的内容是否能够滚动,来自动的选择这两种模式。如果Activity窗口中有一个能够滚动的布局,那么这个窗口就会被调整大小,并假设通过滚动能够在一个较小的区域内来浏览窗口中所有的内容。

adjustResize

为适应软键盘的显示,Activity的主窗口始终要调整大小。

adjustPan

Activity的主窗口不会因软键盘的显示而调整大小,相反,窗口中的内容会被自动的平移,以便输入焦点不会被软键盘所遮挡,并且用户能够看到他们所输入的内容。通常很少使用这种模式,因为用户可能需要关闭软键盘,以便能够跟软键盘所遮挡进行交互。

这个属性在API Level 3中被引入。

元素引入(INTRODUCED IN)

处理noHistory和windowSoftInputMode属性以外(这两个属性在API Level 3中被引入),其他所有的属性都在API Level 1中被引入。

AndroidManifest.xml文件详解(activity)(五)的更多相关文章

  1. [转]AndroidManifest.xml文件详解

    转自:http://www.cnblogs.com/greatverve/archive/2012/05/08/AndroidManifest-xml.html AndroidManifest.xml ...

  2. AndroidManifest.xml文件详解(uses-permission)

    语法(SYNTAX): <uses-permissionandroid:name="string"/> 被包含于(CONTAINED IN): <manifest ...

  3. AndroidManifest.xml文件详解

    本文为安全专家李洋的最新一篇专栏文章<AndroidManifest.xml文件详解>.AndroidManifest.xml是一个跟安全相关的配置文件,该配置文件是Android安全保障 ...

  4. AndroidManifest.xml文件详解(meta-data)

    http://blog.csdn.net/think_soft/article/details/7567189 语法(SYNTAX): <meta-dataandroid:name=" ...

  5. AndroidManifest.xml文件详解(activity)(一)

    <activity android:allowTaskReparenting=["true" | "false"] android:alwaysRetai ...

  6. AndroidManifest.xml文件详解(activity)(四)

    android:multiprocess 这个属性用于设置Activity的实例能否被加载到与启动它的那个组件所在的进程中,如果设置为true,则可以,否则不可以.默认值是false. 通常,一个新的 ...

  7. AndroidManifest.xml文件详解(activity)(三)四种工作模式

    android:launchMode 这个属性定义了应该如何启动Activity的一个指令.有四种工作模式会跟Intent对象中的Activity标记(FLAG_ACTIVITY_*常量)结合在一起用 ...

  8. AndroidManifest.xml文件详解(activity)(二)

    android:configChanges 这个属性列出了那些需要Activity进行自我处理的配置变化.当在运行时配置变化发生的时候,默认情况下,这个Activity会被关掉并重启,但是用这个属性声 ...

  9. 【Android 复习】:AndroidManifest.xml 文件详解

    <?xml version="1.0" encoding="utf-8"?> <!-- package 包表示整个Android应用程序的主要 ...

随机推荐

  1. 09-hibernate单表操作(1)

    1,单一主键 2,基本类型 3,对象类型 4,组件属性 5,单表操作 单一主键 常用生成策略: assigned 有程序员生成(手工) native 由数据库底层,如果是mysql是increment ...

  2. 捕获海康威视IPCamera图像,转成OpenCV能够处理的图像(一)

    海康威视IPCamera图像捕获 捕获海康威视IPCamera图像,转成OpenCV能够处理的IplImage图像(一) 捕获海康威视IPCamera图像.转成OpenCV能够处理的IplImage图 ...

  3. c# webbrowser 清除cookie和缓存

    由于缓存文件是特殊的文件,以及WebBrowser与IE版本有关因此删除缓存绝对不可能用一些IO函数就总可以解决的因此我的这些函数在IO操作的基础上,又针对环境进行相应的清理. static clas ...

  4. 修改配置nginx,限制无良爬虫频率

    配置如下: #全局配置 limit_req_zone $anti_spider zone=anti_spider:10m rate=15r/m; #某个server中 limit_req zone=a ...

  5. jQuery Accordion 插件用于创建折叠菜单

    jQuery Accordion 插件用于创建折叠菜单.它通常与嵌套的列表.定义列表或嵌套的 div 一起使用.选项用于指定结构.激活的元素和定制的动画. 后期完善

  6. HTTP协议,详解

    整合网上各种资料,原创,不懂可以加 QQ:3111901846 一般学习一样新的知识,你首先要问问自己这三个问题,如果学完以后,你能回答出来这几个问题,证明你还是不错的 1.什么是HTTP协议?2.H ...

  7. unity3d协同不同设备的代码

    unity3d的脚本代码中,Update()函数每一帧都会运行一次. 假设有这两台设备:一台超级四路泰坦计算机,一台旧手机,它们一起运行一个赛跑游戏,Update()函数每一帧运行一次,游戏中的小人就 ...

  8. C++之声明与定义的区别

    直接举例,在C++中,声明与定义的区别如下: extern int a;//若有extern关键字,则只是声明 int b;//若没有extern关键字,则为声明+定义 int a;//若之前已经声明 ...

  9. PHPExcel_Reader_Exception: is not recognised as an OLE file in Classes问题解决方法

    $filename="student.xlsx";//指定excel文件 $temp=substr($filename,strpos($filename,"." ...

  10. JAVA 并发编程-应用篇

    提到java多线程不免有些人会头大.非常多概念都是非常理解可是真正到了实战的时候又是不知道怎样操作了.以下就结合实际项目来说说多线程的应用. 业务需求: 举例:批量插入10万条用户的相关活动优惠券 操 ...