Почему мы указываем пространство имен в файле android xml?
Когда мы пишем макет на основе xml в Android, мы используем строку "xmlns: android =" http://schemas.android.com/apk/res/android ".
Из прочитанных мной книг говорится, что это пространство имен, но почему мы это используем? Ссылка даже не существует. Так в чем же польза от этого?
Ответы
Ответ 1
От developer.android.com
XMLNS: Android
Определяет пространство имен Android. Этот атрибут всегда должен быть установлен на "http://schemas.android.com/apk/res/android".
xmlns: android предназначен для идентификации того, что этот xml используется для android, а не для другой функции.
Пространства имен однозначно идентифицируют код/библиотеки. Если я пишу api, который использует все те же имена и, например, android api, единственный способ отличить api от api и android api - использовать пространство имен android или мое.
Вы также можете отправить http://en.wikipedia.org/wiki/XML_namespace
Ответ 2
Возможно, вам захочется сделать некоторые общие чтения по XML. документация w3.org XML может быть лучше всего.
В общем случае пространства имен используются так, что у вас нет столкновений между именами элементов.
Например, если я создал XML-схему, которая определила элемент <person>
, а мой друг создал отдельную схему XML, которая определила совершенно другой элемент, также называемый <person>
, мы могли бы столкнуться. Если бы я попытался ссылаться на оба элемента в файле XML, не было бы способа определить, какой из них был. Однако, если мы используем пространства имен, myNamespace: person явно отличается от myFriendsNamespace: person.
Стандартом для определения пространства имен является использование URI, поэтому вы видите это в определении Android. Это не обязательно означает, что схема существует в этом месте, это означает, что URI является уникальным именем для этого пространства имен.
Ответ 3
Верно, что ссылка не существует. Но используемая нами строка предназначена для объявления пространства имен...
В XML пространства имен используются, чтобы избежать конфликтов имен.
Вы можете сослаться на эту ссылку для получения дополнительных разъяснений
http://www.w3schools.com/XML/xml_namespaces.asp
Ответ 4
Как вы собираетесь ссылаться на android определять ключи в вашем XML. поэтому ресурсы идентифицируют ключ с пространством имен, поэтому мы определяем пространство имен в каждом файле Android XML, например: - "xmlns:android="http://schemas.android.com/apk/res/android".
теперь в XML вы можете ссылаться на ключи, используя тег android, например: -
<FrameLayout
android:id="@+id/id"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/color">
Используя пространство имен android, вы можете найти ключи id, layout_width и layout_height.
Для получения дополнительной информации см. здесь.