Android开发者指南-Manifest.xml-<meta-data>[原创译文]

(2012-01-11 09:39:33)

<meta-data>

版本:Android 3.2

 

语法:

<meta-data android:name="string"

          android:resource="resource specification"

          android:value="string" />

 

包含于:

<activity> <activity-alias> <service> <receiver>

 

说明:

以键-值对形式表示的用于父组件的任意附加数据。组件元素可以包含任意数量的<meta-data> 子元素。这些子元素的值存放在一个Bundle对象中,组件可以通过PackageItemInfo.metaData字段来访问。

普通类型的值可以通过value属性来指定,而资源ID的值须用resource属性来指定。比如,以下代码把名称为“zoo”的数据值指定为存储于@string/kangaroo资源中的字符串:

<meta-data android:name="zoo" android:value="@string/kangaroo" />

另一方面, resource 属性将把“zoo”赋值为资源ID数字,而不是资源中的值:

<meta-data android:name="zoo" android:resource="@string/kangaroo" />

强烈建议不要用多个独立的meta-data元素来定义相关数据。如果有比较复杂的数据需要和组件关联,建议把它们作为资源存储,并用resource属性来将资源ID通知组件。

 

属性:

android:name

定义数据项的唯一名称。为了确保名称唯一性,可使用Java格式的命名规范——比如“com.example.project.activity.fred”。

android:resource

对资源的引用。值为资源ID。通过meta-data Bundle对象的Bundle.getInt()方法可以获取ID

android:value

定义数据项的值。下表列出了可赋予的数据类型以及组件用Bundle对象获取此类值的方法:

类型

Bundle方法

字符串值,双斜杠(\\)作为转义字符——比如"\\n" "\\uxxxxx"表示Unicode字符

getString()

整数值,比如"100"

getInt()

布尔值,"true" "false"

getBoolean()

颜色值,"#rgb""#argb""#rrggbb" "#aarrggbb" 格式

getString()

浮点数值,比如"1.23"

getFloat()

 

引入于:

API Level 1

posted on 2013-04-24 22:28  zhengbeibei  阅读(370)  评论(0编辑  收藏  举报