Главная » Разработка для Android » Размещение  ссылок на визуальные стили в текущей теме

0

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

Чтобы задать ссылку на ресурс, который нужно применить, вместо символа  @ укажите  префикс  ?android:.  Ниже  приведен  фрагмент  кода из предыдущего примера, в котором цвет текста берется из текущей темы, а не из внешнего ресурса:

<EditText android:id="@+id/myEditText" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/stop_message" android:textColor="?android:textColor"

/>

Такой  подход позволяет  создавать  визуальные стили, которые смогут меняться  по мере преобразований в текущей теме, и избавляет  от необхо- димости редактировать каждый отдельный  ресурс.

Ресурсы для приложения To-Do List

В этом примере вы создадите новые внешние ресурсы, подготовите по- чву для добавления  функциональности в приложение To-Do  List, работу над которым начали в главе 2. Созданные  строковые и растровые ресурсы будут использованы в главе 4 при реализации системы меню.

Далее вы познакомитесь с ходом создания ресурсов, содержащих текст и значки для пунктов меню Add и Remove, а также научитесь описывать  ви- зуальную тему и использовать ее в приложении.

1. Создайте два новых изображения в формате PNG: одно будет символи- зировать добавление элементов в список задач, другое — их удаление. Каждое изображение должно иметь размеры около 16 ? 16 пикселов (как показано на рис. 3.5).

Рис. 3.5.

2. Скопируйте изображения в каталог  res/drawable-mdpi и обновите  про- ект.

3. Откройте ресурс strings.xml из каталога res/values и добавьте значе- ния для пунктов меню add_new, remove и cancel (заодно можете удалить стандартное строковое значение с приветствием).

<?xml version="1.0" encoding="utf-8"?>

<resources>

<string name="app_name">To Do List</string>

<string name="add_new">Add New Item</string>

<string name="remove">Remove Item</string>

<string name="cancel">Cancel</string>

</resources>

4. Создайте  новую тему для приложения, добавив  в каталог  res/values

новый файл  с ресурсом  под названием  styles.xml. Тема должна

основываться на стандартной, но при этом устанавливать свой размер шрифта для стандартного  текста.

<?xml version="1.0" encoding="utf-8"?>

<resources>

<style name="ToDoTheme"parent="@android:style/Theme.Black">

<item name="android:textSize">12sp</item>

</style>

</resources>

5. Примените тему к своему проекту в манифесте.

<activity android:name=".ToDoList" android:label="@string/app_name" android:theme="@style/ToDoTheme">

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

По теме:

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