隐藏状态栏安卓

2022-09-03 16:41:08

如何隐藏状态栏安卓4.1.2?我想要解决方案隐藏版本4.1.2上的状态栏

我想在我的应用程序上隐藏状态栏

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

此代码不适用于版本 4.1.2


答案 1

从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();
    }
}

答案 2

将其添加到清单文件中要隐藏状态栏的活动标记下

android:theme="@android:style/Theme.NoTitleBar.Fullscreen" 

你就完成了:)


推荐