УФ5. Использование ресурсов
Ресурсом в приложении Android являюся изображения, макеты, шрифты, стили и т.д. В рамках данного модуля будут рассмотрен ресурс строк.
На примере проекта, созданного в "Модуль 2. Компоненты приложения" мы можем увидеть следующие ресурсы. Все ресурсы находятся в папке /res проекта.

Обращение к ресурам из кода происходит через класс R и ссылкой на нужный ресурс. Например:
setContentView(R.layout.activity_main);
В данном коде устанавливается интерфейс Activity. Для этого через класс R мы обращаемся к папке layout и выбираем макет activity_main.
Строки
Одним из важнейших ресурсов являются строки. Они используются для названия приложения, текста кнопок и т.д.
Файл строк находится в папке res/values/strings.xml
.
Строка создается следующим образом:
Пишется тег
<string
.Вводится имя строки через
name=" "
.Открывающий тег закрывается
>
, вводится содержание строки.Вводится закрывающий тег
</string>
.
Ниже можно увидеть пример строки, в которой написано имя приложения.
<string name="app_name">View and ViewGroup</string>
До сих пор мы задавали значение объектов интерфейса напрямую через атрибут text, однако как-правило значением атрибута text является строки. Вот несколько правил при оформлении строк:
разделяте комментриями строки, которые относятся к разным экранам;
не используйте одни и те же строки повторно.

Для того, чтобы присваивать атрибуту text
или hint
значение откройте xml-код макета и присвойте параметру text
или hint
значение "@string/<имя_строки>"
. В коже ниже пример присваивание атрибуту hint значения строки.
android:hint="@string/hint"
Цвета
Также как и со строками можно назначать цвета. В файле res/values/colors.xml
назначаются цвета.
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="colorBackgroundContainer">@color/colorMoonYellow</color>
<color name="purple_200">#FFBB86FC</color>
<color name="purple_500">#FF6200EE</color>
<color name="purple_700">#FF3700B3</color>
<color name="teal_200">#FF03DAC5</color>
<color name="teal_700">#FF018786</color>
<color name="colorTransparent">#FFFFFFFF</color>
<color name="colorBlack">#FF000000</color>
<color name="colorWhite">#FFFFFFFF</color>
<color name="colorMyGray">#444444</color>
<color name="colorLightGray">#D6D7D7</color>
<color name="colorMyRed">#E54304</color>
<color name="colorMyGreen">#12C700</color>
<color name="colorMyBlue">#425A73</color>
<color name="colorMyYellow">#FFC107</color>
<color name="colorMoonYellow">#FDF8DF</color>
</resources>
По умолчанию уже определены некоторые цвета в файле.
Назначаются цвета соответсвующему атрибуту также, как и строки, разница лишь в том, что идет обращение к @color
, а не к @string
.
android:textColor="@color/colorBlack"
Контроль
Last updated
Was this helpful?