14

ステータスバーandroid 4.1.2を非表示にする方法は? バージョン 4.1.2 でステータス バーを非表示にするソリューションが欲しい

アプリのステータスバーを非表示にしたい

LinearLayout layout = (LinearLayout)findViewById(R.id.layout);    
layout.setSystemUiVisibility(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION);

このコードはバージョン 4.1.2 では機能しません

4

8 に答える 8

20

Jellybean (4.1) 以降、WindowManager に依存しない新しいメソッドがあります。代わりに、ウィンドウの外で setSystemUiVisibility を使用します。これにより、WindowManager フラグを使用するよりもシステム バーを細かく制御できます。完全な例を次に示します。

if (Build.VERSION.SDK_INT < 16) { //ye olde method
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
                    WindowManager.LayoutParams.FLAG_FULLSCREEN);
} else { // Jellybean and up, new hotness
    View decorView = getWindow().getDecorView();
    // Hide the status bar.
    int uiOptions = View.SYSTEM_UI_FLAG_FULLSCREEN;
    decorView.setSystemUiVisibility(uiOptions);
    // Remember that you should never show the action bar if the
    // status bar is hidden, so hide that too if necessary.
    ActionBar actionBar = getActionBar();
    if(actionBar != null) {
         actionBar.hide();
    }
}
于 2014-01-22T02:55:46.000 に答える
3

これがあなたが探しているものであることを願っています..これをsetcontentviewの前に追加してください:

     requestWindowFeature(Window.FEATURE_NO_TITLE);
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); 
于 2013-11-11T10:45:37.823 に答える
3

これはうまくいくと思います

 public static void hideStatusBar(Activity activity) {
    WindowManager.LayoutParams attrs = activity.getWindow().getAttributes();
    attrs.flags &= ~WindowManager.LayoutParams.FLAG_FULLSCREEN;
    activity.getWindow().setAttributes(attrs);
    activity.getWindow().clearFlags(
        WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS);
  }



public static void showStatusBar(Activity activity) {
    WindowManager.LayoutParams attrs = activity.getWindow().getAttributes();
    attrs.flags |= WindowManager.LayoutParams.FLAG_FULLSCREEN;
    activity.getWindow().setAttributes(attrs);
    activity.getWindow().addFlags(
        WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS);
  }
于 2016-02-08T12:02:58.777 に答える
1

このコードを onCreate メソッドに記述します

    this.requestWindowFeature(Window.FEATURE_NO_TITLE);
于 2013-11-11T10:39:01.250 に答える
0

onWindowFocusChanged()このメソッドに行を書きます

getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_FULLSCREEN);
于 2014-05-23T16:23:39.687 に答える