効果的なウィジェット レイアウトを作成するには、まずコア コンテンツを特定します。レイアウトは、ウィジェット内で情報とインタラクティブな要素を整理する方法を決定します。Android には、このプロセスを効率化するために、ツールバー、テキスト、リスト、グリッドタイプのウィジェット用の事前構築済みレイアウトがいくつか用意されています。
テキスト
テキスト レイアウトは、簡潔な情報を表示するのに最適です。テキストの横に画像を含めることで、ウィジェットの視覚的な魅力を高めることができます。
タイトル、ステータスの更新、短い説明、または 1 行のテキストでメッセージを効果的に伝えられるシナリオに最適です。
画像を含めて、視覚的なインパクトを高めます。詳しくは、ブレークポイントをご覧ください。さまざまな画面サイズに対応するようにレイアウトを調整する方法について説明しています。
ツールバー
ツールバー レイアウトを使用すると、アプリでよく使用するタスクにすばやくアクセスできる柔軟なレイアウトを、ウィジェットのサイズに合わせて提供できます。
検索ツールバーのレイアウトは、ツールバーのメイン アクションとして検索に注目を集めるように意図的に設計されています。便利なボタンを追加することで、頻繁に使用する機能にすばやくアクセスできます。
ツールバーには、アプリのブランディングと、切り替え可能な設定やタスクリンクに最適な、よく使用されるタスクのボタンが表示されます。サイズ変更時に、よく使用されるアクションを優先して、あまり使用されないオプションを非表示にできます。ブレークポイントを使用して、スペースがある場合に最小 48 dp のタップ可能なボタンを新たに追加します。
リスト
リスト レイアウトを使用して、複数の項目をわかりやすくスキャンしやすい形式で整理します。ニュースの見出し、ToDo リスト、メッセージなどに最適です。コンテンツを構造化されたスキャン可能なリストに整理します。コンテンツのニーズに応じて、コンテナ化されたプレゼンテーションとコンテナレスのプレゼンテーションのどちらかを選択します。
スキャン可能なテキストと画像リストは、ニュースの見出し、アルバムアート付きのプレイリスト、メッセージなど、複数の種類のコンテンツを表示するのに最適です。
チェックリスト レイアウトは、タスクを表示するのに最適です。ユーザーがアイテムを完了としてすばやくマークするための明確なタップ ターゲットを提供します。
アクション リストで直感的なコントロール グループを提供します。視覚的なオン/オフの状態により、アイテムのステータスに関するフィードバックをすぐに得ることができます。
グリッド
画像をコンパクトで柔軟な、視覚的に豊かなグリッドで表示します。ラベルはオプションです。さまざまな画面サイズに対応する列と行を使用します。
画像のみのグリッドを使用して、視覚的にインパクトのあるスクロール可能な画像ギャラリーを作成します。行と列は、最適な表示になるようにさまざまな画面サイズに自動的に適応します。
テキストのラベルや説明を組み込むこともでき、画像グリッドのコンテンツにコンテキストや情報を追加して充実させることができます。
コードサンプル
次の表は、各標準レイアウトと、Android Platform Samples GitHub リポジトリにある対応する Jetpack Glance 実装とのマッピングを示しています。
| 正規レイアウト | レイアウト カテゴリ | 実装例ファイル |
|---|---|---|
| テキストのみ | テキスト | LongTextAppWidget.kt |
| テキストと画像 | テキスト | TextWithImageAppWidget.kt |
| 検索ツールバー | ツールバー | SearchToolBarAppWidget.kt |
| ツールバー(標準) | ツールバー | ToolBarAppWidget.kt |
| テキストと画像のリスト | リスト | ImageTextListAppWidget.kt |
| チェックリスト | リスト | CheckListAppWidget.kt |
| アクション リスト | リスト | ActionListAppWidget.kt |
| 画像のみ | グリッド | ImageGridAppWidget.kt |
| 画像とテキスト | グリッド | ImageGridAppWidget.kt |