Android, Разработка приложений для чайников - Фелкер Донн (2012)
-
Год:2012
-
Название:Android, Разработка приложений для чайников
-
Автор:
-
Жанр:
-
Оригинал:Английский
-
Язык:Русский
-
Издательство:ДИАЛЕКТИКА
-
Страниц:201
-
ISBN:978-5-8459-1748-5
-
Рейтинг:
-
Ваша оценка:
•Рады приветствовать вас в Android! Овладейте навыками создания современных приложений для Android, использования инструментов разработки, работы с экранами портативных устройств и организовывания процесса разработки. •Вашему приложению необходимо полюбиться пользователям. Обучитесь создавать графический интерфейс приложения визуально примечательным и пригодный для использования.
•Обучитесь программированию приложений. Познакомьтесь с жизненным кругом приложения и обычными библиотечными классами Android. Обучитесь применять в своих интересах эмулятор портативных устройств и отладчик Eclipse. •Важна не только база. Овладейте знаниями, как создавать приложения, отображающие информацию на многих экранах и которые могут взаимодействовать с базами данных SQLite. •Обозначьте цену и продайте плод своего упорного труда. Обучитесь публиковать их в онлайн-магазине Adroid Marketдля продажи миллионам пользователей и обозначать правильную цену собственным приложениям.
Android, Разработка приложений для чайников - Фелкер Донн читать онлайн бесплатно полную версию книги
startActivity(i);
return true;
}
return super.onMenuItemSelected(featureId, item);
}
Инструкции, отмеченные полужирным шрифтом, создают объект намерения
Intent с целевым классом TaskPreferences. Когда пользователь выбирает в меню
пункт Настройки, активизируется экран настроек, с помощью которого пользователь
может редактировать их. Если запустить приложение Task Reminder, открыть меню и
выбрать пункт Настройки, откроется экран, показанный на рис. 15.3.
Глава 15. Пользовательские настройки 309
Android Application Development For Dum.indb 309 08.11.2011 12:24:08
Рис. 15.3. Экран настроек
Работа с настройками во время выполнения
Установка настроек в объекте PreferenceActivity — важный этап, но, чтобы они
были полезными для пользователя, нужно предоставить ему возможность читать на-
стройки из объекта SharedPreferences во время выполнения. Нужно также каким-
либо образом применить настройки в приложении. К счастью, платформа Android
существенно упрощает обе эти задачи.
В приложении Task Reminder необходимо прочитать значения настроек в объекте
ReminderEditActivity и установить их в задачу, когда пользователь начинает соз-
давать ее. Настройки хранятся в объекте SharedPreferences, поэтому к ним можно
обратиться в любой деятельности приложения.
Извлечение настроек
Откройте в окне редактора файл деятельности ReminderEditActivity и найдите
метод populateFields(). Этот метод выясняет, какая задача открыта для редактиро-
вания — существующая или новая (создаваемая). Если задача новая, нужно извлечь
значения, установленные по умолчанию, из объекта SharedPreferences и загрузить
их в деятельность. Если пользователь не устанавливал настройки, они будут представ-
лены пустыми строками. В данный момент проигнорируем их. Будем использовать
настройки, только если пользователь устанавливал их.
310 Часть III. Создание мощных приложений
Android Application Development For Dum.indb 310 08.11.2011 12:24:08
Извлечем значения настроек из объекта SharedPreferences (листинг 15.3). В ме-
тоде populateFields() добавьте код, отмеченный полужирным шрифтом.
Листинг 15.3. Извлечение значений настроек из объекта SharedPreferences
private void populateFields() {
if (mRowId != null) {
Cursor reminder = mDbHelper.fetchReminder(mRowId);
startManagingCursor(reminder);
mTitleText.setText(reminder.getString(
reminder.getColumnIndexOrThrow(
RemindersDbAdapter.KEY_TITLE)));
mBodyText.setText(reminder.getString(
reminder.getColumnIndexOrThrow(
RemindersDbAdapter.KEY_BODY)));
SimpleDateFormat dateTimeFormat = new
SimpleDateFormat(DATE_TIME_FORMAT);
Date date = null;
try {
String dateString =
reminder.getString(reminder.getColumnIndexOrThrow(
RemindersDbAdapter.KEY_DATE_TIME));
date = dateTimeFormat.parse(dateString);
mCalendar.setTime(date);
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (ParseException e) {
e.printStackTrace();
}
} else { 21
SharedPreferences prefs =
PreferenceManager.
getDefaultSharedPreferences(this); 22
String defaultTitleKey =
getString(R.string.pref_task_title_key); 23
String defaultTimeKey = getString(