Я хотел бы знать, почему мы используем XML для создания макетов пользовательского интерфейса в Android . Я знаю, что он отделяет бизнес-логику от дизайна, но каково значение XML помимо этого?
Также я хотел бы узнать значение автоматически созданного R.java
] файл в этом. Все, что я знаю, он генерируется в соответствии с изменениями в ресурсах и помогает нам получить доступ к виджетам и ресурсам через их идентификаторы.
Было бы здорово, если бы кто-нибудь мог дать четкое представление об этих двух аспектах.
То же самое, что и почему Silverlight с XML - ответ прост: XML обеспечивает мощь за счет интеграции и масштабируемости. R.java для индексации организованных вещей никогда не бывает плохим. Извините, мой английский
Одна из возможных причин заключается в том, что вам не нужно иметь рабочую Java-версию, чтобы увидеть визуальный макет интерфейса, над которым вы работаете. Элемент / страница пользовательского интерфейса xml - это документ, который вы можете анализировать и отображать. Если бы это был исходный файл, вам пришлось бы либо тщательно проанализировать его, либо скомпилировать и запустить его (все они более сложны, чем синтаксический анализ xml)
XML легко анализировать и манипулировать программно, в основном это древовидная структура, и большинство инструментов для создания пользовательского интерфейса уже используют его. Это на самом деле не имеет ничего общего с развязкой бизнес-логики, потому что вы также можете определять код Java в Android, используя шаблон Model-View-Controller.
Сгенерированный автоматически файл R.java является вспомогательным средством для IDE, так что вы можете воспользоваться преимуществами автозаполнения, когда хотите получить доступ к ресурсу. Это также мешает вам делать глупые ошибки, так как компилятор будет жаловаться, если вы попытаетесь получить доступ к ресурсу, который вы не определили. Если бы вы использовали простой файл свойств, вы до самого времени исполнения не знали бы, что используемый вами ключ отсутствует.