Главная » Разработка для Android » РЕСУРСЫ – ANDROID ПРИЛОЖЕНИЯ

0

 

В приложении Android все изображения, ярлыки и файлы компоновки пользовательского интерфейса располагаются в каталоге (директории) res. Обычно в нем содержится не менее четырех подкаталогов:

layout – содержит XML-файлы компоновки пользовательского интерфейса Android;

drawable – включает в себя отрисовываемые объекты, в частности ярлык приложения, упоминавшийся в предыдущем разделе;

raw – содержит файлы, которые могут считываться в потоковом режиме во время исполнения приложения. Такие необработанные файлы отлично подходят для того, чтобы сообщать приложению информацию для отладки, так как снимают необходимость выходить в сеть и получать оттуда данные;

values – включает в себя значения, которые приложение будет считывать во время исполнения, или статические данные, которые приложение будет использовать для таких целей, как, например, интернационализация строк пользовательского интерфейса.

Приложения получают доступ к ресурсам этих каталогов, пользуясь методом Context.getResourc.es и классом R.

Для доступа к данным каталога res разработчик Java, предпочитающий работать в традиционном стиле, может писать такой код, в котором будут строиться относительные пути к файлам, а потом для открытия ресурсов будет использоваться файловый API. После загрузки нескольких байт ресурсов разработчик, вероятно, решит произвести синтаксический разбор формата, специфичного для данного приложения, чтобы наконец получить доступ к элементам, без которых не обойдется ни одно приложение: к изображениям, строкам и файлам с данными. Учитывая, что все приложения нуждаются в загрузке схожей информации, в Android включена утилита, которая интегрируется с Eclipse, обеспечивает легкую доступность ресурсов для программной логики и стандартизирует ресурсы программы.

Eclipse и Android SDK работают совместно и создают каталог под названием gen. Этот каталог содержит класс, который всегда называется R. Этот класс находится в пакете приложения Java, упомянутом в файле описания Android. Файл класса R содержит поля, которые уникально идентифицируют все ресурсы в структуре пакета приложения. Разработчик вызывает метод Context.getResources для получения экземпляра android. content. res. Resources, в котором и располагаются ресурсы приложения. (Методы в классе Context можно вызывать напрямую, так как Activity – как и Service – дополняют Context.) Затем разработчики вызывают методы объекта Resources для получения ресурсов желаемого типа, как показано ниже:

Как вы впоследствии увидите, класс R в Android является вездесущим, обеспечивая легкий доступ к таким ресурсам, как, например, компоненты файлов пользовательского интерфейса.

Источник: Android. Программирование на Java для нового поколения мобильных устройств

По теме:

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