В разделе “Архитектура виджетов домашнего экрана” объяснялась роль и обязанности активности конфигурирования. Для примера виджета Birthday Widget эти обязанности реализованы в классе активности по имени ConfigureBDayWidgetActivity. Исходный код этого класса .
Этот класс принимает имя персоны и дату следующего дня рождения. Затем он создает экземпляр BDayWidgetModel и сохраняет его в разделяемых настройках.
Взглянув на код функции updateAppWidgetLocal , вы заметите, что эта функция создает и сохраняет модель. Затем она использует функцию updateAppWidget для ее отображения. Стоит отметить, как функция updateAppWidget использует ожидающее намерение для регистрации обратного вызова. Ожидающее намерение принимает первичное намерение:
Intent defineIntent = new Intent(Intent.ACTION VIEW, Uri.parse("http://www.google.com"));
и создает ожидающее намерение для запуска активности. В качестве альтернативы ожидающее намерение может также применяться для запуска службы. Также следует отметить, что эта функция работает с RemoteViews и AppWidgetManager. Обратите внимание, что эта функция решает перечисленные ниже задачи.
Получение RemoteViews из компоновки.
Установка текстовых значений в RemoteViews.
Регистрация ожидающего намерения через RemoteViews.
Вызов AppWidgetManager для отправки RemoteViews виджету.
Возврат результата в конце.
На заметку! Статическая функция updateAppWidget может вызываться откуда угодно до тех пор, пока известен идентификатор виджета. Это подразумевает возможность обновления виджета внутри устройства из любого места и любого процесса, как визуального и невизуального.
Обратите внимание, что вызывающему коду передается идентификатор виджета. Именно так AppWidgetManager узнает, что активность конфигурирования завершена для данного экземпляра виджета.
В заключение давайте рассмотрим компоновку для активности конфигурирования виджета . Это представление довольно прямолинейно: оно включает пару текстовых полей и элементов управления для редактирования и кнопку для обновления. Вы можете видеть это наглядно.
Инструмент для предварительного просмотра виджетов
Ранее было кратко, как можно задавать изображение предварительного просмотра для виджета в XML-файле определения виджета.
Эмулятор предоставляет вспомогательное приложение, которое позволяет захватить снимок экрана виджета и применять его далее в качестве изображения предварительного просмотра. Как разработчик, вы можете запустить это приложение, отыскав его в списке приложений эмулятора. Приложение для предварительного просмотра виджетов дает возможность http://www.jbi-kuncevo.ru/ выбрать интересующий виджет. После выбора виджета запустится активность конфигурирования (если она доступна). В конце вы у экземпляр своего виджета. Приложение для предварительного просмотра виджетов затем позволит получить снимок экрана и отправит вам сообщение электронной почты, содержащее нужный файл.
Либо же можно предоставить любое изображение предварительного просмотра в виде значка. Помните, что изображение предварительного просмотра — это просто значок. Как вы его получите — дело сугубо ваше.
Опубликовал Kest
February 14 2015 14:02:10 ·
0 Комментариев ·
2184 Прочтений ·
• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •
Комментарии
Нет комментариев.
Добавить комментарий
Рейтинги
Рейтинг доступен только для пользователей.
Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.
Нет данных для оценки.
Гость
Вы не зарегистрированны? Нажмите здесь для регистрации.