![](https://developer.android.com/static/images/design/ui/mobile/system-bars-hero.png?authuser=9&hl=ja)
ステータスバーとナビゲーション バーを総称して「システムバー」と呼びます。 バッテリー残量、時刻、 通知アラートなどの機能を備え、どこからでもデバイスを直接操作できます。
通常のショッピングや Android OS やインプット メソッドなどとのインタラクションに対応する UI を サポートしています。すべてのレイヤの最上位にシステムバーを配置して、 把握するのに役立ちます
<ph type="x-smartling-placeholder">![](https://developer.android.com/static/images/design/ui/mobile/system-bars-image-behind.png?authuser=9&hl=ja)
まとめ
デザインにシステムバーを含めて、UI セーフゾーン、システム 操作、入力方法、ディスプレイ カットアウト、その他のデバイス機能。 最上位レイヤにシステムバーを配置して、システムバーが確実に考慮されるようにします。
推奨事項: システムバーを透明にし、アプリを全画面にレイアウトする。 引き続き UI を表示して、完全なエッジ ツー エッジのエクスペリエンスを提供できます。
両方のバーを透明に設定できない場合は、バーの色を アプリの本体と同じ色にする必要がありますたとえば、画面下部に ナビゲーション バーの色(ジェスチャー バーの色と上部のステータスバー) color をボディカラーで比較します。
<ph type="x-smartling-placeholder"></ph> 図 2: システムバーの色とアプリのボディの色を一致させる タップ ジェスチャーを追加したり、ジェスチャー インセットの下にターゲットをドラッグしたりしないでください。これら エッジ ツー エッジやジェスチャー ナビゲーションと競合している。
<ph type="x-smartling-placeholder"></ph> 図 3: システム ジェスチャー インセットタップを置かない 標的となる
システムバーの背後にコンテンツを描画する
エッジ ツー エッジ機能により、Android ではシステムバーの下に UI を描画して、 没入感を高められますGoogle ではエッジ ツー エッジの使用をおすすめしています。これは、 「ナビゲーション バーの透明化」は、ユーザーからよく寄せられる要望です。( エッジ ツー エッジをサポートしている)。
アプリはインセットに反応することで、コンテンツの重複に対処できます。インセットは、 アプリのコンテンツと重複を避けるために、アプリのコンテンツを Android OS UI の一部(ナビゲーション バーやステータスバーなど)や、 ディスプレイ カットアウトなどの物理デバイス機能。
エッジ ツー エッジでの使用を意図した設計では、次のタイプのインセットに注意してください。 ケース:
- システムバー インセットは、タップ可能であってはならない UI に適用されます。 システムバーによって隠れてしまうことがあります。
- システム ジェスチャー インセットは、システムで使用されるジェスチャー ナビゲーションの領域に適用されます。 アプリよりも優先される場合もあります
ステータスバー
Android では、ステータスバーに通知アイコンやシステム アイコンが表示されます。「 ステータスバーを下にスワイプして通知にアクセス 表示されます。
<ph type="x-smartling-placeholder">![](https://developer.android.com/static/images/design/ui/mobile/system-bars-status-bar-region-highlighted.png?authuser=9&hl=ja)
ステータスバーの表示は、コンテキスト、時間帯、 ユーザーが設定した設定やテーマ、その他のパラメータなどです。また、 ステータスバーのスタイルを指定します。
<ph type="x-smartling-placeholder">![](https://developer.android.com/static/images/design/ui/mobile/system-bars-status-bar-light-dark-theme.png?authuser=9&hl=ja)
エッジ ツー エッジ対応で、アプリのコンテンツが画面全体に広がるようにする 必要ありません。次のスライドに示すように、端から端までコンテンツを表示する透明なシステムバーを使用する 見てみましょう。
<ph type="x-smartling-placeholder">![](https://developer.android.com/static/images/design/ui/mobile/system-bars-transparent-edge-to-edge.png?authuser=9&hl=ja)
![](https://developer.android.com/static/images/design/ui/mobile/system-bars-do-and-dont.png?authuser=9&hl=ja)
通知が届くと、通常はステータスバーにアイコンが表示されます。この 通知ドロワーに何かあることをユーザーに知らせる。 チャンネルを表すアプリのアイコンやシンボルになります。詳しくは、 通知の設計。
<ph type="x-smartling-placeholder">![](https://developer.android.com/static/images/design/ui/mobile/system-bars-notification-icon.png?authuser=9&hl=ja)
ステータスバーのスタイルを設定する
カスタムカラーを使用して、アプリのテーマの一部としてステータスバーの背景のスタイルを設定します 透明度と不透明度も設定できます。
<style name="Theme.MyApp">
<item name="android:statusBarColor">
@android:color/transparent
</item>
</style>
背景色を手動で設定する場合は、必要に応じてステータスのスタイルを設定できます コントラストを最適に調整できます。
ディスプレイ カットアウトとステータスバー
ディスプレイ カットアウトとは、一部のデバイスのディスプレイ内に広がる領域のことです。 前面センサーのスペースを確保できます。画像の外観に影響を与える可能性があります。 ステータスバーが表示されます。ディスプレイ カットアウトはメーカーによって異なる場合があります。
ディスプレイ カットアウトをサポートする方法をご覧ください。
<ph type="x-smartling-placeholder">![](https://developer.android.com/static/images/design/ui/mobile/system-bars-display-cutouts.png?authuser=9&hl=ja)
ナビゲーション バー
Android では、「戻る」、「ホーム」、「概要」のコントロールを使用してナビゲーションを制御できます。
- [戻る] は前のビューに直接戻ります。
- ホームがアプリからデバイスのホーム画面に移行します。
- [概要] には、アプリが起動中で、最近起動されたことが示されます。
ユーザーはジェスチャーを含むさまざまなナビゲーション バーの構成から選択可能 ナビゲーション(推奨)と 3 ボタン ナビゲーションの 2 つの種類があります。
ジェスチャー ナビゲーション
Android 10(API レベル 29)で導入されたジェスチャー ナビゲーションは、 ナビゲーション タイプがありますが、ユーザーの設定をオーバーライドすることはできません。ジェスチャー 「戻る」、「ホーム」、「概要」のボタンを使用せず、代わりに 1 つの操作ハンドルをアフォーダンスとして提供します。ユーザーは左右にスワイプするか 前後に移動したり、下から上に移動したりできます。 できます。上にスワイプして長押しすると、概要が表示されます。
ジェスチャー ナビゲーションは、さまざまなデバイスでデザインを行うための、よりスケーラブルなナビゲーション パターンです。 対応しています最適なユーザー エクスペリエンスを提供するには、 ジェスチャー ナビゲーションの方法:
- エッジ ツー エッジのコンテンツのサポート。
- ジェスチャー ナビゲーション インセットに操作やタップ ターゲットを追加しないようにします。
詳しくは、ジェスチャー ナビゲーションの実装をご覧ください。
<ph type="x-smartling-placeholder">![](https://developer.android.com/static/images/design/ui/mobile/system-bars-gesture-handle.png?authuser=9&hl=ja)
3 ボタン ナビゲーション
3 ボタン ナビゲーションには、「戻る」、「ホーム」、「概要」の 3 つのボタンがあります。
<ph type="x-smartling-placeholder">![](https://developer.android.com/static/images/design/ui/mobile/system-bars-3-button-nav.png?authuser=9&hl=ja)
その他のナビゲーション バーのバリエーション
Android のバージョンやデバイスによっては、他のナビゲーション バーの設定が異なる場合があります。 利用できるようにしますたとえば、2 ボタン ナビゲーションには、 ホームボタンと戻るボタンです。
<ph type="x-smartling-placeholder">![](https://developer.android.com/static/images/design/ui/mobile/system-bars-2-button-nav.png?authuser=9&hl=ja)
ナビゲーション スタイルを設定する
次の例は、ナビゲーション スタイルを実装する方法を示しています。
<style name="Theme.MyApp">
<item name="android:navigationBarColor">
@android:color/transparent
</item>
</style>
Android は、ユーザー インターフェースのすべての視覚的保護をジェスチャーで処理する 有効にする必要があります
ジェスチャー ナビゲーション モード: 動的な色調整が適用されます。 コンテンツに応じてシステムバーのコンテンツの色が 背後にあります。次の例で、ナビゲーション バーのハンドルは 明るいコンテンツの上に配置すると暗い色に変わり、その逆も同様です。
<ph type="x-smartling-placeholder"></ph> 図 13: 動的な色適応 ボタンモード: システムの背後に半透明のスクリムが適用されます。 バー(API レベル 29 以降の場合)または透明なシステムバー(API レベルの場合) 28 以下)。
<ph type="x-smartling-placeholder"></ph> 図 14: 動的な色調整(システムバー) 背景のコンテンツに基づいて色が変わります
キーボードとナビゲーション
<ph type="x-smartling-placeholder">![](https://developer.android.com/static/images/design/ui/mobile/system-bars-on-screen-keyboard.png?authuser=9&hl=ja)
各ナビゲーション タイプは、画面キーボードに適切に反応して、
ユーザーは、閉じたり変更したりといった操作を
キーボード タイプを選択できます。キーボードの遷移をスムーズにするには、
アプリの遷移をキーボードのスライドと同期させる
画面下部から上下にスクロールするには、
WindowInsetsAnimationCompat
。
没入モード
<ph type="x-smartling-placeholder">![](https://developer.android.com/static/images/design/ui/mobile/system-bars-immersive-mode.png?authuser=9&hl=ja)
全画面表示にしたいときは、システムバーを非表示にできます。次に例を示します。 ユーザーが映画を視聴しているとき。タップした後でも、 システム コントロールを操作したり操作したりするために、システムバーと UI を表示します。 詳しくは、全画面モード向けのデザインをご覧ください。また、 没入モードのシステムバーを非表示にします。