【发布时间】:2022-02-16 23:56:21
【问题描述】:
目标
我正在尝试隐藏状态栏并让内容出现在它后面。
我尝试过的
在我目前正在开发的手机(Samsung Galaxy S9+)上,我设法让它与这个功能一起工作
public static void removeAndroidNavBar(View view){
int uiOptions = View.SYSTEM_UI_FLAG_LOW_PROFILE
| View.SYSTEM_UI_FLAG_FULLSCREEN
| View.SYSTEM_UI_FLAG_LAYOUT_STABLE
| View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY
| View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_HIDE_NAVIGATION;
view.setSystemUiVisibility(uiOptions);
}
像这样在SetContentView()之后在OnCreate()方法上调用
removeAndroidNavBar(getWindow().getDecorView());
问题
但是,我在 OxygenOs 上的 OnePlus Nord 2 上运行代码,但这不起作用。 状态栏不显示(取而代之的是一个黑色空间),但是我不知道如何让它完全消失,让内容出现在它的后面。
文档
正如文档所说HERE,
在 Android 4.1 及更高版本上,您可以将应用程序的内容设置为显示在状态栏后面,以便内容不会随着状态栏的隐藏和显示而调整大小。为此,请使用 SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN。您可能还需要使用 SYSTEM_UI_FLAG_LAYOUT_STABLE 来帮助您的应用保持稳定的布局。
这就是我正在做的,我只在 One Plus Nord 2 设备上遇到了这个问题
我做错了什么?
【问题讨论】:
标签: java android android-studio android-statusbar