Главная » Разработка для Android » Знакомство с Активностью настроек и фреймворком для их создания

0

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

пользователи знакомы с разметкой и принципом использования Экра- на настроек в вашем приложении;

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

Фреймворк для создания  Активности настроек (Preference Activity) со- стоит из трех частей.

• Разметка экрана. Файл XML, который определяет иерархию в вашей Активности настроек. В нем перечисляются элементы управления, которые  нужно  отобразить,  допустимые  значения  и ключи Общих

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

• Активность настроек. Расширение класса PreferenceActivity, которое будет использоваться для размещения экранов с настройками вашего приложения.

• Прослушивание изменений в Общих настройках. Реализация класса onSharedPreferenceChangeListener, который предназначен для отсле- живания  изменений,  вносимых в Общие настройки.

Фреймворк для создания  Активности  настроек — мощный  инструмент, с помощью которого можно проектировать полностью настраиваемые ди- намические  экраны  с настройками. Весь спектр возможностей, которые предоставляет этот фреймворк, невозможно описать в рамках данной книги. Тем не менее в следующих разделах показывается, как создавать и исполь- зовать каждый из компонентов,  описанных ранее.

Создание разметки Экрана настроек в формате XML

Одна из наиболее важных частей Активности настроек — XML-разметка. В отличии от обычной разметки пользовательского интерфейса определения настроек хранятся в каталоге ресурсов res/xml.

Принципиально не отличаясь от разметки пользовательского интерфей- са, описанной в главе 4, разметка Экрана настроек использует  особый набор элементов  управления, разработанный специально  для создания  экранов с настройками (как  в случае с системными настройками). Эти «родные» виджеты настроек описаны в следующем разделе.Каждая разметка настро- ек определяется в иерархическом виде, начиная с единственного элемента PreferenceScreen:

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

<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">

</PreferenceScreen>

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

Внутрь каждого Экрана настроек вы можете добавлять комбинацию эле- ментов PreferenceCategory и Preference<элемент управления>. Элементы Категории настроек (Preference Category), показанные  в следующем  фраг- менте кода, разбивают каждый Экран настроек на подкатегории  с помощью заголовочных  разделителей:

<PreferenceCategory

android:title="My Preference Category"/>

</PreferenceCategory>

На рис. 6.2 показаны  категории  SIM card lock, Passwords  и Credential storage, использованные в Экране настроек Location & security.

Продолжение ?

Листинг 6.3 (продолжение)

<CheckBoxPreference android:key="PREF_CHECK_BOX" android:title="Check Box Preference"

android:summary="Check Box Preference Description" android:defaultValue="true"

/>

</PreferenceCategory>

</PreferenceScreen>

Этот Экран настроек выглядит, как показано на рис. 6.3.

Рис. 6.3.

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

По теме:

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