Мы создаем много файлов XML для одного приложения в разработке приложений для Android; конечно, это главная тема андроида. Для каждого экрана приложения мы создаем XML с некоторыми макетами (статическая реализация). При выполнении каждый раз, когда XML-файл будет прочитан, чтобы получить все ресурсы, которые он хочет отобразить на экране, который мы разработали.Почему мы используем xml?
Та же конструкция может быть достигнута путем добавления нескольких строк в самом Java-коде (динамическая реализация). Например, мы можем расширить ListActivity вместо создания файла XML, например. Тогда зачем идти на XML, так как приложение должно читать файл из памяти телефона, что может привести к медленному доступу и замедлить работу приложения?
Таким образом, динамическая реализация всегда лучше, чем статическая.
Пожалуйста, исправьте меня, если я ошибаюсь.
Я не мог найти для этого источник, но я думал, что XML-файлы ресурсов анализируются при компиляции в оптимизированную структуру данных (что-то вроде AST), которая может быть быстро загружена и интерпретирована системой. Я не думаю, что загрузка этих предварительно обработанных XML-файлов - большая часть накладных расходов. Вы сравнивали время между onCreate() и onGlobalLayout()? Другими вещами обычно являются проблемы с производительностью. Как HTTP-запросы, слишком сложные (вложенные) макеты, а не повторное использование объектов, которые можно было повторно использовать и т. Д. – tiguchi
@NobuGames: Вы правы - файлы макета XML предварительно обрабатываются во время сборки. Я никогда не видел медленного представления пользовательского интерфейса, и если OP видит отставание, то, как вы полагаете, это может быть связано с чем-то еще в коде, который замедляет основной поток вниз. – Squonk
Итак, android: text = "@ string/mytext" и textview.setText ("Hello"); не имеет большого значения в производительности, правильно. Обратите внимание, что XML (main.xml) снова читает другой XML-файл (string.xml). – Aswin