アプリバーは、画面の上部または下部にあるコンテナで、ユーザーが主要な機能やナビゲーション アイテムにアクセスできるようにします。
| タイプ | デザイン | 目的 | 
|---|---|---|
| トップ アプリバー | 画面上部に表示されます。 | 重要なタスクと情報にアクセスできます。通常、タイトル、コア アクション アイテム、特定のナビゲーション アイテムをホストします。 | 
| ボトム アプリバー | 画面の下部に表示されます。 | 通常、コア ナビゲーション アイテムが含まれます。フローティング アクション ボタンを使用するなど、他のアクションへのアクセスを許可する。 | 
バージョンの互換性
この実装では、プロジェクトの minSDK を API レベル 21 以上に設定する必要があります。
依存関係
トップ アプリバーを実装する
次のコードは、スクロール動作を制御するさまざまな例を含め、4 種類のトップアプリバーの実装を示しています。
小さなトップ アプリバー
小さなトップ アプリバーを作成するには、TopAppBar コンポーザブルを使用します。これは最もシンプルなトップ アプリバーです。この例ではタイトルのみが含まれています。
次の例では、TopAppBar に scrollBehavior の値を渡していないため、トップ アプリバーは内部コンテンツのスクロールに反応しません。
結果
 
  中央揃えのトップ アプリバー
中央揃えのトップ アプリバーは、タイトルがコンポーネント内で中央に配置される点を除き、小型アプリバーと同じです。これを実装するには、専用の CenterAlignedTopAppBar コンポーザブルを使用します。
この例では、enterAlwaysScrollBehavior() を使用して scrollBehavior に渡す値を取得します。ユーザーがスキャフォールドの内部コンテンツをスクロールすると、バーが閉じます。
結果
 
  中程度のトップ アプリバー
中程度のトップ アプリバーでは、タイトルが追加アイコンの下に配置されます。作成するには、MediumTopAppBar コンポーザブルを使用します。
前のコードと同様に、この例では enterAlwaysScrollBehavior() を使用して、scrollBehavior に渡す値を取得します。
結果
enterAlwaysScrollBehavior からのスクロール動作を示す中程度のトップ アプリバー。大きなトップ アプリバー
大きなトップ アプリバーは中程度のアプリバーに似ていますが、タイトルとアイコンの間のパディングが大きく、画面全体で占有するスペースも大きくなります。作成するには、LargeTopAppBar コンポーザブルを使用します。
この例では、exitUntilCollapsedScrollBehavior() を使用して scrollBehavior に渡す値を取得します。ユーザーがスキャフォールドの内部コンテンツをスクロールするとバーは閉じますが、ユーザーが内部コンテンツの最後までスクロールするとバーは開きます。
結果
 
  ボトム アプリバーを実装する
ボトム アプリバーを作成するには、トップ アプリバー コンポーザブルに似ている BottomAppBar コンポーザブルを使用します。
次のキーパラメータにコンポーザブルを渡します。
- actions: バーの左側に表示される一連のアイコン。通常、これらは特定の画面の主要なアクションまたはナビゲーション アイテムです。
- floatingActionButton: バーの右側に表示されるフローティング アクション ボタン。
結果
 
  要点
- 通常、アプリバーは Scaffoldコンポーザブルに渡します。このコンポーザブルには、アプリバーを受け取るための特定のパラメータがあります。
- 上部アプリバーの実装に使用するコンポーザブルは、次の主要なパラメータを共有します。 - title: アプリバー全体に表示されるテキスト。
- navigationIcon: ナビゲーションのメインアイコン。アプリバーの左側に表示されます。
- actions: アプリバーの右側に表示される、主要なアクションにユーザーがアクセスするためのアイコン。
- scrollBehavior: トップ アプリバーがスキャフォールドの内部コンテンツのスクロールにどのように応答するかを決定します。
- colors: アプリバーの表示方法を決定します。
 
- ユーザーがスキャフォールドの内部コンテンツをスクロールしたときに、アプリバーがどのように応答するかを制御できます。これを行うには、 - TopAppBarScrollBehaviorのインスタンスを作成し、トップ アプリバーの- scrollBehaviorパラメータに渡します。- TopAppBarScrollBehaviorには次の 3 種類があります。- enterAlwaysScrollBehavior: ユーザーがスキャフォールドの内部コンテンツを上に引っ張ると、トップ アプリバーが閉じます。ユーザーが内部コンテンツを下に引っ張ると、アプリバーが展開されます。
- exitUntilCollapsedScrollBehavior:- enterAlwaysScrollBehaviorに似ていますが、ユーザーがスキャフォールドの内部コンテンツの最後まで到達すると、アプリバーも拡張されます。
- pinnedScrollBehavior: アプリバーは移動せず、スクロールに反応しません。
 
このガイドを含むコレクション
このガイドは、Android 開発の幅広い目標を網羅する、厳選されたクイックガイド コレクションの一部です。
 
        