Можно ли избежать XML? Да, за исключением манифеста и, возможно, некоторых объявлений тем (я не уверен, существуют ли общедоступные эквиваленты Java для всего, что мы можем установить с помощью тем).
Это хорошая идея? Небеса, нет.
Смысл системы ресурсов состоит в том, чтобы позволить Android прозрачно передавать вам необходимые ресурсы, необходимые устройству в настоящий момент, на основе как постоянных характеристик устройства (например, плотности экрана), так и переходных характеристик устройства (например, портрет или . альбомная ориентация).
Чтобы избежать ресурсов, вам придется пройти через кучу операторов if
, чтобы определить, какой кусок Java-кода запустить, обнаруживая все эти вещи вручную. Это значительно усложняется, если принять во внимание изменения в самом Android, поскольку новые изменения конфигурации и значения добавляются, что затрудняет вам поддержку всего, что вам необходимо, в обратно совместимой форме.
Попутно вы потеряете всю поддержку инструментов (создание графического интерфейса с помощью перетаскивания, ассистенты строковых ресурсов MOTODEV Studio и т. Д.), За исключением простого редактирования и отладки Java.
Кажется, вы ставите свои собственные технические предпочтения выше всех других соображений. Если это небольшой личный проект, это может быть хорошим подходом. Однако если вы создаете код, который будет разрабатываться и / или поддерживаться другими со временем, вам необходимо учитывать потребности этих других разработчиков, и они могут быть гораздо более открыты для XML, чем вы.