Как сделать виджет в Android без программирования

Виджеты — это графические компоненты, размещаемые на «домашнем экране» и, как правило, служащие в качестве ярлыков для быстрого запуска приложений, либо же для предоставления той или иной информации, обновляемой с определенным интервалом. Не каждое приложение включает возможность разместить виджет, однако, разработчику под Андроид это нужно уметь делать. В данной статье мы как раз рассмотрим, как можно создать простейший виджет.

Итак, создадим виджет, который будет выводить текущую дату и время.

Рабочее поле домашнего экрана любого смартфона обычно представляет собой 16 «ячеек» — 4 х 4, имеющих размер 74 на 74 dp минус 2 пикселя на границы ячейки. Если мы создаем виджет, который имеет ширину в 130 dp, то весь виджет по ширине все равно будет занимать две ячейки (в оставшуюся часть от второй ячейки уже ничего другого не будет размещено).

Создадим необходимый код для нашего виджета.

1. Создадим layout для виджета, то есть его внешний вид. Код res/layout/main.xml:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_gravity="center" android:background="@android:color/white" android:orientation="vertical" >   <TextView android:id="@+id/textView2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Test" />   </LinearLayout>

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

По умолчанию, в качестве текстового значения выводим слово «Test».

2. Создадим конфигурационный файл, описывающий наш виджет — res/xml/widget_provider.xml:

1 2 3 4 5 6 <?xml version="1.0" encoding="utf-8"?> <appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android" android:minWidth="146dp" android:minHeight="72dp" android:updatePeriodMillis="1800000" android:initialLayout="@layout/main" />

Все нужные настройки мы помещаем внутрь тега appwidget-provider. Мы задаем его высоту (74dp минус 2dp на границы), ширину (74dp + 74dp минус 2dp на границы), частоту обновления updatePeriodMillis в миллисекундах и файл компоновки initialLayout, который мы создали на предыдущем шаге.

Стоит отметить, что можно задавать любое количество миллисекунд, однако, в реальности виджет не будет обновляться чаще, чем раз в 30 минут. Такое ограничение позволяет экономить заряд батареи и другие ресурсы устройства. Таким образом, время, показанное нашим виджетом будет обновляться раз в полчаса. Это не очень практично, но наша цель — научиться создавать виджет и попрактиковаться.

3. Создаем java-код, который будет обновлять наш виджет — src/ru/androiddocs/widget/MyWidget.java:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 package ru.androiddocs.widget;   import java.text.SimpleDateFormat; import java.util.Date;   import android.appwidget.AppWidgetManager; import android.appwidget.AppWidgetProvider; import android.content.Context; import android.content.Intent; import android.util.Log; import android.widget.RemoteViews;   public class MyWidget extends AppWidgetProvider {   public static String ACTION_WIDGET_RECEIVER = "ActionReceiverWidget";   @Override public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) { //вызываем переопределенный метод родительского класса super.onUpdate(context, appWidgetManager, appWidgetIds); //пишем в лог имя данного метода для отслеживания Log.d("kkk", "onUpdate");   //Создаем новый RemoteViews RemoteViews remoteViews = new RemoteViews(context.getPackageName(), R.layout.main); //Создаем строку с текущей датой и временем SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss"); Date date = new Date(); String now = dateFormat.format(date); //обновляем данные в TextView виджета remoteViews.setTextViewText(R.id.textView2, now); appWidgetManager.updateAppWidget(appWidgetIds, remoteViews);   }   @Override public void onReceive(Context context, Intent intent) { //вызываем переопределенный метод родительского класса super.onReceive(context, intent); //пишем в лог имя текущего метода Log.d("kkk", "onReceive");   //Ловим наш Broadcast final String action = intent.getAction(); if (ACTION_WIDGET_RECEIVER.equals(action)) {   } } }

Внутри данного класса — два метода: onUpdate() и onReceive(). Первый метод срабатывает всегда, когда «наступает момент» для обновления виджета (время мы задали в миллисекундах в конфигурационном xml-файле). Второй метод — с наступлением определенного события-intent (Intent broadcast). На данный момент мы не помещаем какую-либо серьезную логику во второй метод, но используем логирование, чтобы увидеть, что при вызове onUpdate следом также вызывается и метод onReceive().

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

Чтобы получить доступ к TextView виджета мы должны использовать RemoteViews, т.к. обратиться к layout напрямую не получится. Далее мы «сеттим» текст (время в строковом формате):

1 remoteViews.setTextViewText(R.id.textView2, now);

и обновляем виджет:

1 appWidgetManager.updateAppWidget(appWidgetIds, remoteViews);

Сам виджет выглядит на эмуляторе вот так:

Рубрика: Разное

Что такое виджеты на телефоне и планшете? Как уcтановить и удалить виджеты?


        Одно из самых главных преимуществ операционной системы Android — это возможность настройки внешнего вида телефона или планшета так, как вам больше всего нравится. По мере того, как вам изрядно надоел старый интерфейс, вы можете без всяких проблем поменять стандартные значки и иконки установленных приложений, раскрашивать в разные цвета рабочие столы, изменить их количество, добавить дополнительные панели и виджеты.
        
Многие начинающие пользователи ошибочно считают, что понятия «иконки» и «виджеты» — это одно и то же. Действительно, четкого разделения этих двух понятий не существует даже в Android Play Market. Как иконки, так и виджеты располагаются на рабочем столе, служат для показа информации и обеспечивают быстрый доступ к ней. Однако иконки и виджеты имеют существенные отличия. Иконки рабочего стола — представляют собой ярлыки различных программ, а виджеты — это небольшие приложения или часть приложений, предназначенные для отображения информации, управления оборудованием устройства или запуска той программы, частью которой они являются.
        

        
Виджеты позволяют вывести на экран всю необходимую вам информацию сразу, запускать соответствующее приложение при этом не требуется. Наиболее известные виджеты — это виджет часов, календаря, погоды, фотографий контактов, списка писем, листочков заметок, покупок, анекдотов и основных переключателей. Информация на виджете отображается автоматически при подключении к Интернету.
        
Обычно смартфоны и планшеты выпускаются с набором предустановленных виджетов, если же на рабочем столе нет нужного вам виджета, то его можно установить самостоятельно, следуя следующей инструкции:
        
        1. Скачайте понравившейся вам виджет из магазина Google Play. В этом магазине вы найдете огромное количество виджетов на любой вкус.
        
        2. Разместите виджет на рабочий стол, учитывая версию Android вашего устройства:
— на смартфонах и планшетах, работающих на платформе Android 2.x, сделайте долгое касание пальцем на свободном месте рабочего стола вашего устройства. При этом делать это можно на любом рабочем столе, если их у вас несколько. После этого откроется меню, где нужно выбрать раздел «Виджеты» и в открывшемся окне сделать несколько секундное касание пальцем на том виджете, который вы хотите установить на рабочий стол. Далее виджет можно переместить на любую область экрана, меняя местами с существующими ярлыками.
        
— на устройствах ОС Android 4.x и выше установить виджет на рабочий стол намного проще. Для этого необходимо нажать центральную кнопку внизу экрана, дождаться открытия списка приложений и там выбрать раздел «Виджеты», который обычно находится вверху экрана. Также найти нужный виджет здесь можно перелистывая экран направо и налево. В завершении процесса виджет нужно перетащить на наиболее подходящее месторасположение экрана телефона или планшета, касаясь его пальцем и не отпуская до достижения намеченной цели.
        
Виджеты могут иметь различные формы и размеры. Минимальный их размер такой же, как у обычных ярлыков — 1х1см. Увеличить или уменьшить размеры виджета можно, коснувшись его значка пальцем и дождавшись появления по его краям управляющих элементов. Перетягивая их, легко и просто изменить размеры виджета. Также прикоснувшись виджета пальцем в течение нескольких секунд, и не отпуская его, можно перетащить виджет из одного рабочего стола на другой.
        
        
Полноэкранные виджеты занимают весь дисплей. Они намного красивее и удобнее в использовании. Однако установка виджета, занимающего много места в памяти телефона или планшета, может заметно «затормозить» работу устройства. Ухудшает скорость работы и большое количество установленных виджетов, а потому самым распространенным вопросом среди обладателей смартфонов и планшетов с операционной системой Android является «Как удалить виджет с рабочего стола?»
        
Чтобы убрать виджет с главного экрана, коснитесь его пальцем и не отпуская, перетащите его к символу корзины. После того, как виджет окажется в корзине, отпустите палец. Теперь его не должно быть на рабочем столе. Подобным образом с экрана смартфона или планшета можно удалить и ненужные ярлыки, файлы и папки. Но при этом следует знать, что удаление виджета не означает, что у вас теперь не будет доступа к этой программе.

        
Сама программа остается в меню телефона или планшета. Чтобы убрать виджет из устройства совсем, сначала нужно удалить программу, частью которой он является. Для этого нужно зайти в меню «Приложения», затем в раздел «Управление приложениями» и в нем удалить виджет, который вы считаете лишним.
        
        Читайте также интересные статьи на темы:
        1.Что такое гироскоп? Зачем нужен гироскоп в смартфоне?
        2. Зачем нужен акселерометр в смартфоне и планшете? Как откалибровать акселерометр?
        3.Как поставить будильник на телефоне? Разновидности будильников для Андроид.
        4.Что такое лаунчер? Как установить лаунчер на смартфон и планшет?
        5.Как прошить смартфон? Переустановка Android на телефоне.
        6.Как прошить китайский смартфон? Прошивка китайского телефона.
        7.Как бесплатно скачать игры на планшет? Устанавливаем игры на планшет.
        8.Как установить приложения на телефон? Как скачать программы и игры на Аndroid?
        9.Как поменять мелодию звонка на телефоне? Переустановка мелодии на Android.
        10.Как выбрать внешний жесткий диск? Как подключить жесткий диск к планшету?

Другие интересные статьи

Ждем ваших вопросов и рекомендаций:

Виджеты для андроид на андроиде 5.1, в андроид 6.0, андроид 7.0 и более ранних версиях представляют собой приложения, которые работают на рабочем столе.

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

Они могут быть очень востребованными, поскольку он предоставляет полезную информацию данных, но и ресурс устройства «жрут» прилично.

ПРИМЕЧАНИЕ: все картинки ниже сделаны на телефоне самсунг, поэтому с вашими могут в точности не совпадать.

Где находятся виджеты в андроид и как их найти.

Вам незачем искать место где они находятся – достаточно просто добавить их на экран.

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

Как добавить виджет на главный экран

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

Для этого используйте следующую процедуру

На рабочем столе, нажмите и удерживайте пустое место пока не появится новый вид. Там нажмите «Виджеты» на средней-нижней части экрана.

Из списка выберите который хотите добавить.

После обнаружения, нажмите и удерживайте или нажмите и отпустите (зависит от версии андроид и модели телефона) нужный требуемый, пока система не вернет вас к панели выбора.

Теперь переместите мини приложение в нужное место и отпустите его на главном экране – для этого нажмите на него.

Как настроить размер виджета на главном экране

Виджеты имеют размер по умолчанию, но вы можете настроить размер в зависимости от потребностей. Для этого используйте следующую процедуру.

Когда найдете требуемый, нажмите и удерживайте значок, пока не появятся четыре границы.

Вы можете изменить размер виджета просто перетаскивая рамку к краю экрана.

Перетащите виджет в кадр внутренней части чтобы уменьшить размер путем перетаскивания его с краем увеличения или уменьшения размера.

Как переместить виджет на главном экране

Вы можете перемещаться из одного места в другое, для этого используйте следующую процедуру.

Когда найдете требуемый виджет, нажмите и удерживайте значок, до появления четырех ребер.

Теперь можете перетащить его в требуемое место на главном экране. Отпустите, чтобы поместить его в нужном месте.

Как удалить виджет на главном экране

Когда найдете виджет, нажмите и удерживайте значок, пока на границах не увидите показа четырех ребер.

После показа границы значок, в верхней части экрана появится корзина или опция «Удалить» — перетащите его туда виджет, это его полностью удалит на главном экране.

В одной из статей мы рассматривали вопрос о том, как удалить ярлык или виджет с рабочего стола на Андроиде.

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

ЧТО ТАКОЕ ВИДЖЕТЫ ДЛЯ АНДРОИД?

Виджеты — это небольшие полезные приложения, которые можно разместить на рабочем столе смартфона. Они загружаются вместе с системой и висят в фоновом режиме. Зачастую виджеты распространяются в качестве дополнения, расширяющего функционал какого-либо приложения. Тем не менее, есть немало и «одиночных» виджетов, не связанных ни с какими приложениями.

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

Читайте также: Клавиатуры для Андроид.

Калькулятор++

Пожалуй, лучший виджет-калькулятор для Андроид. Он позволяет выполнять не только простые, но и продвинутые вычисления, не открывая основного приложения.

Перейти же к основной версии программы можно по нажатию одной клавиши. Выглядит виджет минималистично и вполне достойно. Виджет доступен для бесплатной загрузки в Google Play.

Погода BZ

Один из лучших виджетов погоды для Android с, пожалуй, самым точным прогнозом: сервис агрегирует результаты, полученные из разных источников. Программа показывает температуру, скорость ветра, демонстрирует красивую 3D-анимацию текущей погоды. Имеется возможность выводить прогноз по часам, на день или на неделю в качестве виджета. Несмотря на то, что приложение бесплатное, в нем нет рекламы. Единственное, что расстраивает, как и другие виджеты для андроид HD и анимированные виджеты, приложение потребляет довольно много заряда аккумулятора.

Программа доступна для бесплатной загрузки в Google Play.

Month Calendar Widget

Это очень простой виджет-календарь для андроид. Он показывает дни текущего месяца и позволяет пролистывать месяцы вперед и назад. Собственно на этом его возможности и заканчиваются. А чего еще ждать от календаря? Пользоваться программкой очень удобно — она всегда под рукой, но не отвлекает на себя внимания. Рекламы в ней нет, ресурсы системы почти не ест. В общем, перед нами пример того, что простые и бесплатные виджеты для Андроид бывают лучше «навороченных» конкурентов.

Программа доступна для бесплатной загрузки в Google Play.

Другие смартфоны Флай
На нашем сайте можно найти каталог с остальными смартфонами Fly на Андроиде.

Battery Widget Reborn

Пожалуй, лучший виджет заряда батареи для Андроид. Он позволяет получить всю доступную информацию о состоянии аккумулятора в устройстве. Виджет крупно выводит, сколько процентов энергии осталось, строит график потребления. Также можно посмотреть, когда была последняя зарядка, оценить температуру батареи и тому подобные данные. Правда не стоит забывать, что отслеживающий уровень заряда виджет также потребляет питание.

Программа доступна для загрузки в Google Play бесплатно или за 199 рублей.

Power Toggles

Прекрасный виджет, позволяющий быстро переключить все основные настройки телефона, не покидая рабочий стол. Обычно подобные виджеты производители предустанавливают в ОС, однако Power Toggles позволяет создать собственную идеальную шторку с индивидуальным набором переключателей и выбрать для нее цвет. В общем, это отличный андроид-виджет Wi-Fi, переключения данных, звуковых режимов и тому подобного.

Приложение доступно для бесплатной загрузки в Google Play.

Яндекс.Новости

Еще одно приложение от «Яндекса» в нашей подборке. Перед нами виджет новостей для Андроид, который демонстрирует в окошке рабочего стола актуальные заголовки дня. Имеется возможность переключаться между различной тематикой сообщений. Поддерживается огромное количество российских и зарубежных СМИ.

Приложение доступно для бесплатной загрузки в Google Play.

Invisible Lock Screen Widget

Многие современные телефоны и планшеты стали такими массивными, что нащупывать клавишу блокировки попросту неудобно.

А иногда она и вовсе ломается. На такой случай пригодится прекрасный виджет блокировки Андроид Invisible Lock Screen Widget. Достаточно скачать виджет и расположить его в любом месте на рабочем столе. Теперь, кликнув туда, вы заблокируете экран.

Особенность виджета, как это понятно из названия, заключается в том, что он невидимый, а значит не отвлекает на себя внимание. Главное не забыть, куда вы его положили.

Программа доступна для бесплатного скачивания в Google Play.

Clock Now

Прекрасный виджет-часы для Андроид. Программа получила красивый, проработанный дизайн в стиле Google Now. Здесь же выводится клавиша для быстрого доступа к настройкам, имеется прогноз погоды, несколько режимов отображения времени.

Программа доступна для бесплатной загрузки в Google Play.

КАК УСТАНОВИТЬ ВИДЖЕТ НА АНДРОИД?

Как ни странно, но некоторые пользователи не знают, как установить виджет на Android. В зависимости от версий Android и особенностей прошивки, сделать это можно разными способами, однако наиболее частотный — сделать долгий тап по любой свободной точке рабочего стола смартфона и выбрать в появившемся меню пункт «Добавить виджет». В некоторых прошивках виджеты вынесены в меню приложений, достаточно выйти в него и пролистать экраны вправо, пока вы не увидите превью всех доступных виджетов. После этого достаточно перетащить их на рабочий стол также, как вы это делаете с приложениями.

Рассмотрим и то, как удалить виджеты на Андроиде. Для того, чтобы убрать его с рабочего стола, нужно сделать долгое нажатие на окне программки и перетащить его к появившейся клавише «удалить». Правда, после этой процедуры он все-равно останется в списке доступных виджетов. Полное удаление происходит только при стирании приложения, к которому виджет относится.

Если Вам интересно, то Вы можете ознакомиться со статьей .

Выберите свой смартфон fly

Обновленная линейка смартфонов fly smart

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *