Android はナビゲーション バー、ステータス バー、全画面表示を非表示にします

こう言うと、他の人の記事を読むのは、開発者のドキュメントを読むよりも悪いです。

ナビゲーション バーを非表示にする | 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"

この属性

おすすめ

転載: blog.csdn.net/xiaowang_lj/article/details/131191947