Androidで動的にステータスバーとアクションバーを非表示にする方法


  1. フルスクリーンモードを使用する方法:

    // アクティビティのonCreateメソッド内で以下のコードを追加します
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);

    この方法は、アプリの全画面表示を可能にします。ただし、ステータスバーが完全に隠されるため、通知やシステムの情報にアクセスできなくなります。

  2. アクションバーを非表示にする方法:

    // アクティビティのonCreateメソッド内で以下のコードを追加します
    getSupportActionBar().hide();

    この方法は、アクションバー(タイトルバー)を非表示にします。ただし、ステータスバーは表示されたままです。

  3. Immersiveモードを使用する方法: Immersiveモードを使用すると、ステータスバーとアクションバーを非表示にすることができます。ユーザーの操作によって表示/非表示を切り替えることもできます。

    // アクティビティのonCreateメソッド内で以下のコードを追加します
    View decorView = getWindow().getDecorView();
    int flags = View.SYSTEM_UI_FLAG_FULLSCREEN | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY;
    decorView.setSystemUiVisibility(flags);

    この方法は、フルスクリーンモードに加えて、ステータスバーとナビゲーションバー(ソフトキー)も非表示にします。ユーザーが画面の端をスワイプすると再度表示されます。

これらの方法を使って、アプリの要件に応じてステータスバーとアクションバーを動的に非表示にすることができます。適切な方法を選択し、アプリのユーザーエクスペリエンスを向上させてください。