Главная » Разработка для Android » Отделение ресурсов от кода программы

0

Неважно, для какой системы ведется разработка, такие ресурсы, как изображения и строковые константы, всегда лучше держать за пределами ис- ходного кода. Android поддерживает выделение ресурсов во внешние файлы, начиная  с простых значений: строк и цветов, заканчивая более сложными данными вроде изображений (объектов Drawable), анимации и визуальных стилей. Возможно, наиболее мощные ресурсы, которые можно отделить от кода программы, — менеджеры компоновки.

Внешние  ресурсы легче поддерживать, обновлять и контролировать. Вы также можете описывать  альтернативные ресурсы для поддержки  раз- личного аппаратного обеспечения и локализации.

В этом разделе вы увидите, как Android динамически выбирает данные из дерева ресурсов, содержащего разные значения для разных аппаратных конфигураций, языков  и регионов. Это позволит  описывать  уникальные значения для конкретных языков, стран, экранов и клавиатур. При запуске приложения Android  автоматически выберет ресурс с соответствующими данными, не требуя ни единой строчки кода.

Кроме всего прочего это дает вам возможность изменять разметку, учи- тывая  размер экрана  и его ориентацию,  выводить  разные текстовые  под- сказки в зависимости от языка и страны.

Создание ресурсов

Ресурсы приложения хранятся в каталоге res/ внутри дерева вашего про- екта. Каждый  тип ресурсов представлен  в виде подкаталога,  содержащего соответствующие данные.

При создании нового проекта дополнение ADT автоматически добавит в него каталог res с подкаталогами values, drawable-ldpi, drawable-mdpi, drawable-hdpi ? layout. В них будут храниться следующие ресурсы: разметка по умолчанию, значок приложения и определения строковых констант (рис. 3.4).

Рис. 3.4.

Обратите внимание, что каждый из каталогов drawable-* содержит разные значки — для экранов с низким, средним и высоким значением DPI.

Разные  каталоги  предусмотрены для девяти  главных  типов ресурсов: простых значений, ресурсов Drawable, менеджеров компоновки, анимации, стилей, меню, настроек поиска, XML и «сырых» (необработанных) данных. При сборке приложения эти ресурсы скомпилируются самым эффективным образом и включатся  в программный пакет.

При этом генерируется файл для класса R, содержащий  ссылки на все ресурсы проекта, что позволяет ссылаться на ресурсы внутри кода про- граммы. Это дает одно преимущество — проверку синтаксиса во время разработки.

Следующие разделы описывают виды ресурсов, соответствующие при- веденным выше категориям, а также информацию, как создавать ресурсы для приложений.

Имена  файлов  для ресурсов должны состоять  исключительно из букв в нижнем регистре, чисел, а также символов . (точка) и _ (нижнее  подчер- кивание).

Источник: Майер P. Android 2 : программирование приложений для планшетных компьютеров и смартфонов : [пер. с англ. ] / Рето Майер. — М. : Эксмо, 2011. — 672 с. — (Мировой компьютерный бестселлер).

По теме:

  • Комментарии