- синтаксис:
<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
. Чтобы назначить идентификатор ресурса в качестве значения, используйте вместо него атрибутresource
. Например, следующий код присваивает названиюzoo
любое значение, хранящееся в ресурсе@string/kangaroo
:<meta-data android:name="zoo" android:value="@string/kangaroo" />
С другой стороны, использование атрибута
resource
присваиваетzoo
числовой идентификатор ресурса, а не значение, хранящееся в ресурсе:<meta-data android:name="zoo" android:resource="@string/kangaroo" />
Мы настоятельно рекомендуем вам избегать предоставления связанных данных в виде нескольких отдельных записей
<meta-data>
. Вместо этого, если у вас есть сложные данные, которые нужно связать с компонентом, сохраните их как ресурс и используйте атрибутresource
, чтобы сообщить компоненту его идентификатор. - атрибуты:
-
android:name
- Уникальное имя предмета. Чтобы сохранить уникальность имени, используйте соглашение об именовании в стиле Java, например «
com.example.project.activity.fred
». -
android:resource
- Ссылка на ресурс. Идентификатор ресурса — это значение, присвоенное элементу. Идентификатор извлекается из
Bundle
метаданных с помощью методаBundle.getInt()
. -
android:value
- Значение, присвоенное элементу. Типы данных, которые можно назначить в качестве значений, и методы
Bundle
, которые компоненты используют для получения этих значений, перечислены в следующей таблице:Тип Пакетный метод Строка: используйте двойную обратную косую черту ( \\
) для экранирования символов, например\\n
для новой строки и\\uxxxxx
для символа Юникода.getString()
Целое число: например, 100
getInt()
Логическое значение: либо true
, либоfalse
getBoolean()
Цвет: в форме #rgb
,#argb
,#rrggbb
или#aarrggbb
getInt()
Плавающее: например, 1.23
getFloat()
-
- представлено в:
- API уровня 1
Контент и образцы кода на этой странице предоставлены по лицензиям. Java и OpenJDK – это зарегистрированные товарные знаки корпорации Oracle и ее аффилированных лиц.
Последнее обновление: 2024-10-31 UTC.
[[["Прост для понимания","easyToUnderstand","thumb-up"],["Помог мне решить мою проблему","solvedMyProblem","thumb-up"],["Другое","otherUp","thumb-up"]],[["Отсутствует нужная мне информация","missingTheInformationINeed","thumb-down"],["Слишком сложен/слишком много шагов","tooComplicatedTooManySteps","thumb-down"],["Устарел","outOfDate","thumb-down"],["Проблема с переводом текста","translationIssue","thumb-down"],["Проблемы образцов/кода","samplesCodeIssue","thumb-down"],["Другое","otherDown","thumb-down"]],["Последнее обновление: 2024-10-31 UTC."],[],[]]