<meta-data>

语法
<meta-data android:name="string"
           android:resource="resource specification"
           android:value="string" />
包含于
<activity>
<activity-alias>
<application>
<provider>
<receiver>
<service>
描述
一个名称-值对,用于表示可以提供给父组件的额外任意数据项。组件元素可以包含任意数量的 <meta-data> 子元素。所有子元素的值都收集到一个单独的 Bundle 对象中,并作为 PackageItemInfo.metaData 字段提供给组件。

通过 value 属性指定普通值。要分配资源 ID 作为值,请改用 resource 属性。例如,以下代码将存储在 @string/kangaroo 资源中的任何值分配给 zoo 名称

<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 是分配给该项目的 value。使用 Bundle.getInt() 方法从元数据 Bundle 中检索 ID。
android:value
分配给该项目的 value。可以作为 value 分配的数据类型以及组件用于检索这些 value 的 Bundle 方法列在下面的表格中
类型 Bundle 方法
字符串:使用双反斜杠 (\\) 转义字符,例如 \\n 表示换行符,\\uxxxxx 表示 Unicode 字符 getString()
整数:例如,100 getInt()
布尔值:truefalse getBoolean()
颜色:采用 #rgb#argb#rrggbb#aarrggbb 的形式 getInt()
浮点数:例如,1.23 getFloat()
引入于
API 级别 1