Главная » Разработка для Android » Создание стандартной Активности настроек для приложения Еarthquake Viewer

0

Ранее в этой главе вы создали собственную Активность, чтобы пользова- тель мог вносить изменения в настройки приложения Еarthquake Viewer. В этом примере1 предстоит заменить эту Активность с помощью фреймворка для создания стандартных настроек приложения, описанного в предыдущем разделе.

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

1     Все фрагменты  кода в этом примере — часть проекта Earthquake из главы 6, их можно за- грузить с сайта Wrox.com.

Убедитесь, что используете те ключи настроек, которые определили ранее.

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

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

<CheckBoxPreference android:key="PREF_AUTO_UPDATE" android:title="Auto refresh"

android:summary="Select to turn on automatic updating" android:defaultValue="true"

/>

<ListPreference android:key="PREF_UPDATE_FREQ" android:title="Refresh frequency"

android:summary="Frequency at which to refresh earthquake list" android:entries="@array/update_freq_options" android:entryValues="@array/update_freq_values" android:dialogTitle="Refresh frequency" android:defaultValue="60"

/>

<ListPreference android:key="PREF_MIN_MAG" android:title="Minimum magnitude"

android:summary="Select the minimum magnitude earthquake to report" android:entries="@array/magnitude_options" android:entryValues="@array/magnitude" android:dialogTitle="Magnitude"

android:defaultValue="3"

/>

</PreferenceScreen>

2. Откройте Активность настроек и измените  класс, от которого она на- следуется, на PreferenceActivity:

public class UserPreferences extends PreferenceActivity

3. Активность настроек будет вмещать элементы управления для пользо- вательского интерфейса, так что вы можете удалить переменные, кото- рые требовались для хранения объектов CheckBox и Spinner. Вы также можете убрать методы populateSpinners, updateUIFromPreferences и savePreferences.4. Отредактируйте метод onCreate. Удалите  все ссылки на элементы управления, а также на кнопки OK и Cancel. Вместо этого загрузите файл настроек пользовательского интерфейса, кото- рый создали в пункте 1:

@Override

public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); addPreferencesFromResource(R.xml.preferences);

}

4. Теперь, когда вы запустите свое приложение и выберете пункт меню Preferences,  появится новый стандартный экран с настройками, как показано на рис. 6.4.

Рис. 6.4.

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

По теме:

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