Android, Разработка приложений для чайников - Фелкер Донн (2012)
-
Год:2012
-
Название:Android, Разработка приложений для чайников
-
Автор:
-
Жанр:
-
Оригинал:Английский
-
Язык:Русский
-
Издательство:ДИАЛЕКТИКА
-
Страниц:201
-
ISBN:978-5-8459-1748-5
-
Рейтинг:
-
Ваша оценка:
•Рады приветствовать вас в Android! Овладейте навыками создания современных приложений для Android, использования инструментов разработки, работы с экранами портативных устройств и организовывания процесса разработки. •Вашему приложению необходимо полюбиться пользователям. Обучитесь создавать графический интерфейс приложения визуально примечательным и пригодный для использования.
•Обучитесь программированию приложений. Познакомьтесь с жизненным кругом приложения и обычными библиотечными классами Android. Обучитесь применять в своих интересах эмулятор портативных устройств и отладчик Eclipse. •Важна не только база. Овладейте знаниями, как создавать приложения, отображающие информацию на многих экранах и которые могут взаимодействовать с базами данных SQLite. •Обозначьте цену и продайте плод своего упорного труда. Обучитесь публиковать их в онлайн-магазине Adroid Marketдля продажи миллионам пользователей и обозначать правильную цену собственным приложениям.
Android, Разработка приложений для чайников - Фелкер Донн читать онлайн бесплатно полную версию книги
Рис. 7.4. Результат изменения цвета фона виджета
Сделав фон виджета непрозрачным, можно проиллюстрировать концепцию
экранного пространства виджета. Светло-зеленый прямоугольник на рис. 7.4 иденти-
фицирует экранное пространство, доступное для виджета приложения. Виджет может
занять одну или несколько ячеек на главном экране. В данном случае (см. рис. 7.4)
виджет занял одну ячейку.
Глава 7. Размещение виджетов на главном экране 179
Android Application Development For Dum.indb 179 08.11.2011 12:24:00
Чтобы определить компоновку виджета, создайте файл XML в папке res/layouts.
Присвойте файлу компоновки имя widget.xml. Введите в файл widget.xml содер-
жимое, приведенное в листинге 7.2.
Листинг 7.2. Содержимое файла компоновки widget.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android=
"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<ImageView android:id="@+id/phoneState"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:layout_centerInParent="true"
android:src="@drawable/icon"
android:clickable="true" /> 9
</RelativeLayout>
В этой компоновке нет ничего такого, что вы еще не видели. В контейнер
RelativeLayout вложено одно дочернее представление ImageView, чувствитель-
ное к щелчку. Свойство чувствительности к щелчку задано значением true атрибута
clickable в строке 9 листинга 7.2.
Обратите внимание на свойство src элемента ImageView, которому присвоен зна-
чок приложения. Возможно, вам это покажется странным (ведь отображаться дол-
жен не он, а изображение с телефонной трубкой), поэтому нужно объяснить, зачем
я так сделал. Когда я создавал компоновку, кнопок, представляющих громкий и бес-
шумный режимы, еще не существовало. Однако при создании компоновки нужно ви-
деть, как она будет выглядеть на экране. Поэтому я подставил значок, который “был
под рукой”. Тот факт, что подставлен значок, который не будет отображаться, ни на
что не влияет. Когда виджет приложения будет загружен, класс ToggleService пере-
ключит значение src на значок бесшумного или громкого режимов (см. далее).
Значок приложения на главном экране позволяет с первого взгляда увидеть теку-
щее состояние приложения. Значок phone_state_normal виден, когда звонок теле-
фона переключен в громкий режим, а значок phone_state_silent — когда включен
бесшумный режим. Я создал эти значки в графической программе, позволяющей ре-
дактировать изображения.
Выполнение нужных операций в объекте AppWidgetProvider
После того как намерение запустило объект AppWidgetProvider, он должен вы-
полнить некоторую работу от имени вызывающего приложения (в данном случае —
приложения главного экрана). В следующих разделах я покажу, как это делается.
Прежде чем приступить к кодированию, необходимо понять, как работа будет
сделана в AppWidgetProvider. Все операции лучше выполнить в фоновой службе,
потому что, во-первых, они интенсивно нагружают систему, а во-вторых, они выпол-
няются в другом процессе. Поэтому в данном примере изменение режима звонка вы-
полняется в фоновой службе.
180 Часть II. Создание и публикация приложения Android
Android Application Development For Dum.indb 180 08.11.2011 12:24:00
Класс IntentService