首先确定核心内容,然后设计有效的 widget 布局。布局决定了 widget 内的信息和互动元素的组织方式。Android 提供了多种预构建的工具栏、文本、列表和网格型 widget 布局,以简化此流程。
文本
文本布局非常适合显示简洁的信息。您可以选择在文本旁边添加图片,以增强 widget 的视觉吸引力。
工具栏
使用工具栏布局,让用户可以在灵活的布局中快速访问应用中常用的任务,该布局可适应各种 widget 尺寸。
搜索工具栏布局旨在将焦点吸引到搜索 作为工具栏中的主要操作。其他便捷按钮可让用户快速访问常用功能。
工具栏会显示应用品牌,后跟最常用任务的按钮 非常适合可切换的设置或任务链接。调整大小时,系统可能会隐藏不太常用的选项,而显示更常用的操作。当有空间时,使用 断点 添加新的最小 48dp 可点按按钮。
列表
使用列表布局以清晰、可扫描的格式整理多个项。这非常适合新闻标题、待办事项列表或消息。将内容整理成结构化、可扫描的列表。根据内容需求,在容器化呈现或无容器呈现之间进行选择。
可扫描的文本和图片列表非常适合展示多种 内容类型,例如新闻标题、包含专辑封面的播放列表或 消息。
核对清单布局非常适合显示任务,并为用户提供清晰的点按 目标,以便用户快速将项标记为已完成。
使用操作列表提供直观的控件分组,其中视觉上的开/关 状态可立即反馈项状态。
网格
以紧凑、灵活、视觉效果丰富的网格显示图片,并可选择添加标签。 使用可适应不同屏幕尺寸的列和行。
使用仅图片的 网格创建视觉冲击力强、可滚动的图片库。行和列会自动适应各种屏幕尺寸,以实现 最佳呈现效果。
您还可以添加文本标签和说明,为您的 图片网格内容添加更多背景信息。
代码示例
下表将每个规范布局映射到 Android Platform Samples GitHub 代码库中相应的 Jetpack Glance 实现。
| 规范布局 | 布局类别 | 实现示例文件 |
|---|---|---|
| 纯文字 | 文本 | LongTextAppWidget.kt |
| 文本和图片 | 文本 | TextWithImageAppWidget.kt |
| 搜索工具栏 | 工具栏 | SearchToolBarAppWidget.kt |
| 工具栏 (标准) | 工具栏 | ToolBarAppWidget.kt |
| 文本和图片列表 | 列表 | ImageTextListAppWidget.kt |
| 核对清单 | 列表 | CheckListAppWidget.kt |
| 操作列表 | 列表 | ActionListAppWidget.kt |
| 仅图片 | 网格 | ImageGridAppWidget.kt |
| 图片和文字 | 网格 | ImageGridAppWidget.kt |