狭額縁ディスプレイを手動でセットアップする

アプリでエッジ ツー エッジ ディスプレイを有効にするには、以下を呼び出します。 enableEdgeToEdge。 ほとんどのアプリでは、これで十分です。このガイドでは、Google Chat で アプリで enableEdgeToEdge を使用せずにエッジ ツー エッジ対応を行う必要がある場合、

アプリを全画面でレイアウトする

WindowCompat.setDecorFitsSystemWindows(window, false) を使用する システムバーの背後にアプリを配置する 例:

Kotlin

override fun onCreate(savedInstanceState: Bundle?) {
  super.onCreate(savedInstanceState)
  WindowCompat.setDecorFitsSystemWindows(window, false)
}

Java

@Override
public void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  WindowCompat.setDecorFitsSystemWindows(getWindow(), false);
}

システムバーの色を変更する

エッジ ツー エッジのレイアウトで動作する場合、アプリでデバイスの色を変更する必要がある。 その下のコンテンツを表示できるようになります。アプリの使用後 このステップが実行されると、ユーザーのすべての視覚的保護がシステムによって インターフェース(ジェスチャー ナビゲーション モードとボタンモード)

  • ジェスチャー ナビゲーション モード: システムバーのコンテンツの色が 背後にあるコンテンツに応じて変化します できます。次の例では、ナビゲーション バーのハンドルが 明るいコンテンツの場合は暗い色、それより上の場合は明るい色 ダーク コンテンツです。
で確認できます。 <ph type="x-smartling-placeholder">
</ph> <ph type="x-smartling-placeholder">をご覧ください。 <ph type="x-smartling-placeholder">
</ph> 図 1.ジェスチャー ナビゲーションの色の変更 モードです。
  • ボタンモード: 半透明のモードを適用します。 スクリム システムバー(API レベル 29 以降の場合)または透過的なシステムの bar(API レベル 28 以前向け)を使用するには、
で確認できます。 <ph type="x-smartling-placeholder">
</ph> 半透明のシステムバーを示す画像 <ph type="x-smartling-placeholder">
</ph> 図 2.システムバーの背後にある半透明のスクリム。
  • ステータスバーのコンテンツの色: ステータスバーなど、ステータスバーのコンテンツの色を制御します。 表示することもできます。
で確認できます。 <ph type="x-smartling-placeholder">
</ph> ステータスバーのコンテンツの色を示す画像 <ph type="x-smartling-placeholder">
</ph> 図 3.ステータスバーのコンテンツの色。

themes.xml ファイルを編集して、ナビゲーション バーの色を設定できます。 ステータスバーを透明にし、ステータスバーのコンテンツの色を任意の色に設定できます。 ダークモードです。

<!-- values-v29/themes.xml -->
<style name="Theme.MyApp">
  <item name="android:navigationBarColor">
     @android:color/transparent
  </item>

  <!-- Optional: set to transparent if your app is drawing behind the status bar. -->
  <item name="android:statusBarColor">
     @android:color/transparent
  </item>

  <!-- Optional: set for a light status bar with dark content. -->
  <item name="android:windowLightStatusBar">
    true
  </item>
</style>

こちらの WindowInsetsController API サポートライブラリを使用することを強くおすすめします WindowInsetsControllerCompat 必要があります。代わりに WindowInsetsControllerCompat API を使用できます。 ステータスバーのコンテンツの色を制御する theme.xml。これを行うには、 setAppearanceLightNavigationBars() true を渡して、ナビゲーションのフォアグラウンドの色を ライトの色または false: デフォルトの色に戻します。

Kotlin

val windowInsetsController =
      ViewCompat.getWindowInsetsController(window.decorView)

windowInsetsController?.isAppearanceLightNavigationBars = true

Java

WindowInsetsControllerCompat windowInsetsController =
      ViewCompat.getWindowInsetsController(getWindow().getDecorView());
if (windowInsetsController == null) {
    return;
}

windowInsetsController.setAppearanceLightNavigationBars(true);