Почему эта строка xmlns: android = «http://schemas.android.com/apk/res/android» должна быть первой в XML-файле макета?
Зачем нужна эта строка в файле макета xml?
В XML xmlns объявляет пространство имен. Фактически, когда вы это делаете:
Вместо вызова android:id , xml будет использовать http://schemas.android.com/apk/res/android:id, чтобы быть уникальным. Обычно эта страница не существует (это URI, а не URL-адрес), но иногда это URL-адрес, который объясняет используемое пространство имен.
Пространство имен имеет почти то же значение, что и имя пакета в приложении Java.
Унифицированный идентификатор ресурса (URI)
Унифицированный идентификатор ресурса (URI) представляет собой строку символов, которая идентифицирует интернет-ресурс.
Наиболее распространенным URI является Uniform Resource Locator (URL), который идентифицирует адрес домена в Интернете. Другим, не очень распространенным типом URI является Universal Resource Name (URN).
В наших примерах мы будем использовать только URL-адреса.
Xmlns относится к пространству имен XML
При использовании префиксов в XML необходимо определить так называемое пространство имен для префикса. Пространство имен определяется атрибутом xmlns в начальном теге элемента. Объявление пространства имен имеет следующий синтаксис. XMLNS: префикс = «URI».
Примечание : URI пространства имен не используется парсером для поиска информации.
Цель состоит в том, чтобы предоставить пространству имен уникальное имя. Однако часто компании используют пространство имен как указатель на веб-страницу, содержащую информацию о пространстве имен.
Чтобы понять, почему xmlns:android=“http://schemas.android.com/apk/res/android” должен быть первым в XML-файле макета Мы будем понимать компоненты, используя пример
Sample ::
Единый индикатор ресурса (URI) :
- При вычислении единый идентификатор ресурса (URI) представляет собой строку символов, используемых для идентификации имени ресурса.
- Такая идентификация позволяет взаимодействовать с представлениями ресурса по сети, как правило, в World Wide Web, используя определенные протоколы.
Пример: http://schemas.android.com/apk/res/android:id – это URI здесь
Пространство имен XML :
- Пространства имен XML используются для предоставления уникально названных элементов и атрибутов в XML-документе. xmlns:android описывает пространство имен android.
- Его используют так, потому что это выбор дизайна для google для обработки ошибок во время компиляции.
- Также предположим, что мы пишем наш собственный виджет textview с различными функциями по сравнению с андроидным textview , пространство имен android помогает различать наш пользовательский виджет textview виджет Android- textview
Xmlns: android Определяет пространство имен Android. Этот атрибут всегда должен быть установлен на «http://schemas.android.com/apk/res/android».
Это просто объявление пространства имен XML. Мы используем это пространство имен, чтобы указать, что перечисленные ниже атрибуты принадлежат Android. Таким образом, они начинаются с » android: «
Вы можете создавать собственные пользовательские атрибуты. Поэтому, чтобы предотвратить конфликты имен, где 2 атрибута названы одинаковыми, но вести себя по-другому, мы добавляем префикс « android: », чтобы обозначить, что это атрибуты Android.
Таким образом, это объявление пространства имен должно быть включено в открывающий тег корневого представления вашего XML-файла.
Xmlns: android Это начальный тег для определения пространства имен android в Android. Это стандартная конвенция, определяемая разработчиком google. Когда вы используете и планируете по умолчанию или custome, тогда необходимо использовать это пространство имен.
Определяет пространство имен Android. Этот атрибут всегда должен быть установлен на « http://schemas.android.com/apk/res/android ».
В XML имена элементов определяются разработчиком. Это часто приводит к конфликту при попытке объединить XML-документы из разных XML-приложений. Пользователь или приложение XML не будут знать, как справиться с этими различиями. Конфликты имен в XML можно легко избежать, используя префикс имени. При использовании префиксов в XML должно быть определено пространство имен для префикса. Пространство имен может быть определено атрибутом xmlns в начале тега элемента. Объявление пространства имен имеет следующий синтаксис. XMLNS: префикс = «URI».
- Xmlns означает пространство имен xml.
- Он создан, чтобы избежать конфликтов имен в xml.
- Чтобы избежать именования конфликтов каким-либо другим способом, нам необходимо предоставить каждому элементу префикс.
- Чтобы избежать повторного использования префикса в каждом теге xml, мы используем xmlns в корневом каталоге xml. Следовательно, у нас есть тег xmlns: android = » http://schemas.android.com/apk/res/android «
- Теперь андроид просто означает, что мы присваиваем ему пространство имен « http://schemas.android.com/apk/res/android ».
- Это пространство имен не является URL-адресом, а URI также известен как URN (универсальное имя ресурса), которое редко используется вместо URI.
- Из-за этого андроид будет отвечать за идентификацию связанных с Android элементов в XML-документе, который был бы android: xxxxxxx и т. Д. Без этого пространства имен android: xxxxxxx не будет распознаваться.
Чтобы поставить термин непрофессионала:
Без xmlns: android = » http://schemas.android.com/apk/res/android » связанные с Android теги не будут распознаны в XML-документе нашего макета.
Это форма xmlns: android = «@ + / id». Теперь, чтобы обратиться к нему, мы используем, например,
Который находится в форме xmlns: app = «@ + / id», и его использование приводится ниже
Это декларация пространства имен XML, чтобы указать, что атрибуты, входящие в группу представлений, которые были замечены, связаны с Android.
Я думаю, что это ясно видно из пространства имен, поскольку мы можем создавать наши собственные атрибуты, и если указанный пользователем атрибут совпадает с Android, он избегает конфликта пространства имен.
Источник
Xmlns: android, как это работает?
Рассмотрим следующий отлично сформированный файл макета на android:
Я посмотрел на это и полюбил этот ULR: http://schemas.android.com/apk/res/android . Итак, я попытался ввести его в адресную строку веб-браузера, а также попытался получить его через CURL, но оба метода показали, что он фактически не существует. Я искал что-то похожее на каталог apk / res / android в папке android-sdk на моей локальной машине, но этот поиск тоже не появился. Итак, я понял, что этот ресурс на самом деле не существует, возможно, что я могу изменить строку xmlns: android на все, что захочу. Я пошел вперед и изменил его на
А затем попытался перекомпилировать мой проект. Я получил этот результат:
Это меня смущает. Если ресурс не существует в любом случае, то какое это имеет значение, если я изменил значение xmlns: android на какой-то другой несуществующий ресурс? И если это действительно существует, то где это?
xmlns:android=»http://schemas.android.com/apk/res/android» объявляет префикс пространства имен XML. xmlns указывает, что речь идет о объявлении пространства имен. android – префикс. http://schemas.android.com/apk/res/android – это URI – строка, которая однозначно определяет, к какому пространству имен относится. URI может быть чем-то абстрактным (как в данном случае); Это не обязательно URL-адрес, который физически находит что-то.
В общем, вы можете выбрать фактический префикс. Вы, скорее всего, замените android чем-то другим, и он все равно будет работать.
Так что на самом деле этот атрибут означает «Нам нужно работать с узлами из пространства имен http://schemas.android.com/apk/res/android здесь, и в этом файле мы будем ссылаться на это пространство имен как на android ,
Если в нескольких файлах вы определяете разные префиксы пространства имен, используя один и тот же URI, все эти файлы будут ссылаться на одно и то же пространство имен – потому что URI один и тот же. Префикс можно увидеть как сокращенное обозначение для обращения к фактическому пространству имен. Префикс может использоваться только внутри файла, который его определяет.
Это не ресурс, это просто URI . Обычно процессы, которые работают с XML-файлами, ожидают определенное пространство имен XML. Когда вы используете свое пространство имен, это как если бы вы переименовали атрибуты в нечто другое. И поэтому инструменты, которые работают с ними, больше не распознают их.
Источник
Почему эта строка xmlns: android=»http://schemas.android.com/apk/res/android» должен быть первым в макете xml файл?
зачем эта строка нужна в xml-файле макета?
11 ответов:
в XML xmlns объявляет пространство имен. На самом деле, когда вы делаете:
вместо android:id , xml будет использовать http://schemas.android.com/apk/res/android:id быть уникальным. Как правило, эта страница не существует (это URI, а не URL-адрес), но иногда это URL-адрес, который объясняет используемое пространство имен.
пространство имен имеет почти то же самое использование, что и имя пакета в приложении Java.
единый идентификатор ресурса (URI)
универсальный идентификатор ресурса (URI) — это строка символов, которая определяет интернет-ресурс.
наиболее распространенным URI является единый локатор ресурсов (URL), который определяет адрес домена в Интернете. Другой, не столь распространенный тип URI-это универсальное имя ресурса (URN).
в наших примерах мы будем использовать URL-адреса.
при использовании префиксов в XML необходимо определить так называемое пространство имен для префикса. Пространство имен определяется атрибутом xmlns в начальном теге элемента. Объявление пространства имен имеет следующий синтаксис. xmlns: prefix= «URI».
Примечание: URI пространства имен не используется синтаксическим анализатором для поиска информации.
цель состоит в том, чтобы дать пространству имен уникальное имя. Однако, часто компании используют пространство имен как указатель на веб-страницу, содержащую информацию о пространстве имен.
чтобы понять, почему xmlns:android=“http://schemas.android.com/apk/res/android” должен быть первым в xml-файле макета мы будем понимать компоненты, используя пример
Sample ::
- в вычислениях унифицированный идентификатор ресурса (URI) представляет собой строку символы, используемые для идентификации имени ресурса.
- такая идентификация позволяет взаимодействие с представительствами ресурс по сети, как правило, во Всемирной паутине, используя определенные протоколы.
пример: http://schemas.android.com/apk/res/android:id это URI здесь
- пространства имен XML используются для предоставления уникально именованных элементов и атрибуты в XML-документе. xmlns:android описывает android пространство имен.
- его используют так, потому что это выбор дизайна Гугл обрабатывать ошибки во время компиляции.
- также предположим, что мы пишем наши собственные textview виджета с разными особенности по сравнению с Android textview , пространство имен android помогает различие между нашей таможней textview виджет и android textview виджет
xmlns: android Определяет пространство имен Android. Этот атрибут всегда должен быть установлен в «http://schemas.android.com/apk/res/android».
Это просто объявление пространства имен XML. Мы используем это пространство имен для того, чтобы указать, что атрибуты, перечисленные ниже, принадлежат Android. Таким образом, они начинаются с » android:«
вы можете создать свои собственные атрибуты. Поэтому, чтобы предотвратить конфликты имен, где 2 атрибута называются одинаково, но ведут себя по-разному, мы добавляем префикс» android: » чтобы обозначить, что это атрибуты Android.
таким образом, это имя Объявление пространства должно быть включено в открывающий тег корневого представления вашего XML-файла.
xmlns: android это начальный тег для определения пространства имен android в Android. Это стандартная конвенция, определяемая разработчиком Android google. когда вы используете и макет по умолчанию или клиентов, то должны использовать это пространство имен.
определяет пространство имен Android. Этот атрибут всегда должен быть установлен в «http://schemas.android.com/apk/res/android».
в XML-документах имена элементов не определено разработчиком. Это часто приводит к конфликту при попытке смешать XML-документы из разных XML-приложений. Пользователь или XML-приложение не будет знать, как обрабатывать эти различия. Конфликты имен в XML можно легко избежать, используя префикс имени. При использовании префиксов в XML необходимо определить пространство имен для префикса.Пространство имен может быть определено атрибутом xmlns в начальном теге элемента.Объявление пространства имен имеет следующее синтаксис. xmlns: prefix= «URI».
- Xmlns означает пространство имен xml.
- Он создан, чтобы избежать конфликтов имен в xml-х.
- чтобы избежать конфликтов имен любым другим способом, нам нужно предоставить каждому элементу префикс.
- чтобы избежать повторного использования префикса в каждом XML-теге, мы используем xmlns в корне xml. Поэтому у нас есть тег xmlns:android=»http://schemas.android.com/apk/res/android»
- теперь android здесь просто означает, что мы назначаем пространство имен»http://schemas.android.com/apk/res/android » к нему.
- это пространство имен является не URL, а URI, также известный как URN(универсальное имя ресурса), который редко используется вместо URI.
- из-за этого android будет отвечать за идентификацию связанных с android элементов в xml-документе, который будет android:xxxxxxx и т. д. Без этого пространства имен android: xxxxxxx не будет признанный.
говоря языком непрофессионала:
без xmlns: android=»http://schemas.android.com/apk/res/android » связанные с android теги не будут распознаны в xml-документе нашего макета.
это форма xmlns: android = «@+ / id». Теперь, чтобы ссылаться на него, мы используем, например
еще один xmlns-это
который находится в виде xmlns: app = «@+ / id » и его использование приведено ниже
Я думаю, что это ясно с пространством имен, так как мы можем создавать свои собственные атрибуты, и если указанный пользователем атрибут совпадает с Android, он избегает конфликта пространства имен.
это объявление пространства имен XML, чтобы указать, что атрибуты, которые находятся в группе представлений, в которой он замедляется, связаны с android.
Источник