Jetpack Compose には、デジタル インターフェースを作成するための包括的なデザイン システムであるマテリアル デザインの実装が用意されています。コンポーズ可能な関数を使用して、マテリアル コンポーネントを実装できます。

アクション

ボタンは、UI のほとんどのアクションを促します。
フローティング アクション ボタン(FAB)は、ユーザーがメイン アクションを実行するのに役立ちます。
アイコンボタンを使用すると、ユーザーは 1 回のタップで簡単な操作を行えます。
分割ボタンを使用すると、ユーザーはオプションの選択、ビューの切り替え、要素の並べ替えを行うことができます。

コミュニケーション

バッジは、ナビゲーション アイテムやアイコンに通知、カウント、ステータス情報を表示します。
進行状況インジケーターは、不特定の待ち時間を表すか、プロセスの所要時間を表示します。
スナックバーには、アプリのプロセスに関する短い更新情報が画面の下部に表示されます。
ツールチップには短いラベルまたはメッセージが表示されます。

封じ込め

ボトムシートは、画面の下部に固定されたセカンダリ コンテンツを表示します。
カードには、1 つのテーマに関するコンテンツとアクションが表示されます。
カルーセルには、画面上でスクロールして表示 / 非表示を切り替えられるアイテムのコレクションが表示されます。
ダイアログは、ユーザーフローで重要なプロンプトを提供します。
分割線は、リストや他のコンテナ内のコンテンツをグループ化する細い線です。
リストは、テキストと画像の垂直方向に連続するインデックスです。
スキャフォールドは、複雑なユーザー インターフェースで UI のさまざまな部分をまとめる役割を果たします。

ナビゲーション

アプリバーは画面の上部に配置され、ユーザーのナビゲーションをサポートします。
ナビゲーション バーを使用すると、小さなデバイスで UI ビューを切り替えることができます。
ナビゲーション ドロワーを使用すると、大画面デバイスで UI ビューを切り替えることができます。
ナビゲーション レールを使用すると、中サイズのデバイスで UI ビューを切り替えることができます。
タブを使うことで、さまざまな画面やビューにまたがるコンテンツを整理できます。

選択

チェックボックスを使用すると、ユーザーはリストから 1 つ以上の項目を選択したり、項目のオンとオフを切り替えたりできます。
チップは、ユーザーが情報を入力したり、選択したり、コンテンツをフィルタしたり、アクションをトリガーしたりするのに役立ちます。
日付選択ツールを使用すると、日付または日付の範囲を選択できます。
メニューでは、一時的なサーフェス上に選択肢の一覧が表示されます。
ラジオボタンを使用すると、一連の選択肢の中から 1 つの選択肢を選択できます。
スライダーを使用すると、ユーザーは値の範囲から選択できます。
スイッチは、アイテムの選択をオンまたはオフに切り替えます。
タイム ピッカーを使用すると、ユーザーは特定の時間を選択して設定できます。

テキスト入力

検索では、キーワードやフレーズを入力して関連情報を取得できます。
テキスト フィールドを使用すると、ユーザーは UI にテキストを入力できます。
Compose で基本的なレイアウトを使用する方法について説明します。
文字列や画像などのリソースの管理方法を学習します。