Для создания эффективных макетов виджетов сначала определите основной контент. Макет определяет, как информация и интерактивные элементы будут организованы внутри виджета. Android предлагает несколько готовых макетов для панелей инструментов, текста, списков и сеток, чтобы упростить этот процесс.
Текст
Текстовые макеты идеально подходят для отображения краткой информации. Улучшите визуальную привлекательность вашего виджета, добавив, при желании, изображение рядом с текстом.
Идеально подходит для заголовков, обновлений статуса, кратких описаний или любых ситуаций, когда одна строка текста эффективно передает сообщение.

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

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

Панели инструментов отображают фирменную символику приложения, а затем кнопки для наиболее часто используемых задач, которые идеально подходят для переключаемых настроек или ссылок на задачи. При изменении размера менее часто используемые параметры можно скрыть, отдав предпочтение более распространенным действиям. Используйте контрольные точки , чтобы добавить новую кнопку размером не менее 48 dp, если позволяет место.

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

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

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

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

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

Примеры кода
В следующей таблице приведено соответствие каждого канонического макета соответствующей реализации Jetpack Glance в репозитории Android Platform Samples на GitHub .
| Каноническая компоновка | Категория макета | Пример файла реализации |
|---|---|---|
| Только текст | Текст | LongTextAppWidget.kt |
| Текст и изображение | Текст | TextWithImageAppWidget.kt |
| Панель поиска | Панели инструментов | SearchToolBarAppWidget.kt |
| Панель инструментов (стандартная) | Панели инструментов | ToolBarAppWidget.kt |
| Список текста и изображений | Списки | ImageTextListAppWidget.kt |
| Контрольный список | Списки | CheckListAppWidget.kt |
| список действий | Списки | ActionListAppWidget.kt |
| Только изображение | Сетка | ImageGridAppWidget.kt |
| Изображение и текст | Сетка | ImageGridAppWidget.kt |