我正在尝试永久隐藏导航栏,我正在使用沉浸式模式 粘性,但在向上或向下滚动时再次出现 我知道这个问题重复。
View decorView = getWindow().getDecorView();
int uiOptions = View.SYSTEM_UI_FLAG_LAYOUT_STABLE
| View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
| View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_FULLSCREEN
| View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY;
decorView.setSystemUiVisibility(uiOptions);
我在Google材料中阅读的内容无法永远隐藏,这是真的吗? https://developer.android.com/training/system-ui/navigation 需要建议解决方案
答案 0 :(得分:2)
您可以使用ADB手动进行操作。
要将其永久置于沉浸式模式:
adb shell settings put global policy_control immersive.navigation=*
要还原它:adb shell settings put global policy_control null*
要“删除”它,可以在屏幕视图上方过扫描:
adb shell wm overscan 0,0,0,-168
该数字可能需要更改,但这是对我有用的数字。
还原它:adb shell wm
0,0,0,0
如果必须在应用程序中执行此操作,则可以请求root用户访问权限并在应用程序中运行命令:
val command = "settings put global policy_control immersive.navigation=*"
val runtime = Runtime.getRuntime()
runtime.exec("su")
runtime.exec(command.split(" "))