УФ5. Использование ресурсов

Ресурсом в приложении Android являюся изображения, макеты, шрифты, стили и т.д. В рамках данного модуля будут рассмотрен ресурс строк.

На примере проекта, созданного в "Модуль 2. Компоненты приложения" мы можем увидеть следующие ресурсы. Все ресурсы находятся в папке /res проекта.

Рис. 1. Ресурсы проекта

Обращение к ресурам из кода происходит через класс R и ссылкой на нужный ресурс. Например:

В данном коде устанавливается интерфейс Activity. Для этого через класс R мы обращаемся к папке layout и выбираем макет activity_main.

Строки

Одним из важнейших ресурсов являются строки. Они используются для названия приложения, текста кнопок и т.д.

Файл строк находится в папке res/values/strings.xml.

Строка создается следующим образом:

  1. Пишется тег <string.

  2. Вводится имя строки через name=" ".

  3. Открывающий тег закрывается >, вводится содержание строки.

  4. Вводится закрывающий тег </string>.

Ниже можно увидеть пример строки, в которой написано имя приложения.

До сих пор мы задавали значение объектов интерфейса напрямую через атрибут text, однако как-правило значением атрибута text является строки. Вот несколько правил при оформлении строк:

  • разделяте комментриями строки, которые относятся к разным экранам;

  • не используйте одни и те же строки повторно.

Рис. 2. Объявление строк

Для того, чтобы присваивать атрибуту text или hint значение откройте xml-код макета и присвойте параметру text или hint значение "@string/<имя_строки>". В коже ниже пример присваивание атрибуту hint значения строки.

Цвета

Также как и со строками можно назначать цвета. В файле res/values/colors.xml назначаются цвета.

По умолчанию уже определены некоторые цвета в файле.

Назначаются цвета соответсвующему атрибуту также, как и строки, разница лишь в том, что идет обращение к @color, а не к @string.

Контроль

Для каждого объекта у которого есть текст создайте ресурс строк. Для цветов, которые были назначены в предыдущем модуле создайте ресурсы и переназначьте эти цвета.

Last updated

Was this helpful?