こう言うと、他の人の記事を読むのは、開発者のドキュメントを読むよりも悪いです。
ナビゲーション バーを非表示にする | Android 開発者 | Android 開発者
@Override
public void onWindowFocusChanged(boolean hasFocus) {
super.onWindowFocusChanged(hasFocus);
if (hasFocus) {
hideSystemUI();
}
}
private void hideSystemUI() {
// Enables regular immersive mode.
// For "lean back" mode, remove SYSTEM_UI_FLAG_IMMERSIVE.
// Or for "sticky immersive," replace it with SYSTEM_UI_FLAG_IMMERSIVE_STICKY
View decorView = getWindow().getDecorView();
decorView.setSystemUiVisibility(
View.SYSTEM_UI_FLAG_IMMERSIVE
// Set the content to appear under the system bars so that the
// content doesn't resize when the system bars hide and show.
| View.SYSTEM_UI_FLAG_LAYOUT_STABLE
| View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
// Hide the nav bar and status bar
| View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_FULLSCREEN);
}
これはナビゲーション バーのステータス バーを非表示にするためのもので、独自の BaseActivity にコピーするだけです。
次に、onCreateに全画面を追加すれば問題ありません
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
設定と非表示を個別に行いたい場合は、hideSystemUI メソッドのパラメータを変更するだけです。開発者ドキュメントは非常に包括的です。
注: 独自のレイアウトを追加しないでください。
android:fitsSystemWindows="true"
この属性