状态栏在沉浸模式下保持可见

时间:2019-09-30 08:53:24

标签: android haxe

我正在开发用Haxe编写的游戏的Android版本。它曾经可以工作一段时间,但是现在进入沉浸式模式后状态栏仍然可见。如屏幕截图所示,右上角的按钮被阻止,当您尝试触摸时会显示一个Android菜单。这可能与我的手机升级到Android Pie有关。

Android screen shot showing status bar blocking ingame buttons

我当前正在使用以下标志:

decorView.setSystemUiVisibility(
                View.SYSTEM_UI_FLAG_IMMERSIVE
                | 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);

我尝试了很多组合,但没有成功。状态栏保持可见。当用户从顶部向下旋转时,它才不可见并且仅出现。这就是我想要恢复的行为。

2 个答案:

答案 0 :(得分:1)

这是由Lime内部问题引起的。除了基本的setSystemUiVisibility处理之外,lime还使用SDL来处理setSystemUiVisibility。但是这里设置为非全屏,添加了一些额外的标志:

window.addFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN);
window.clearFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);

如果将这些标志切回,状态栏将按预期消失。我希望这个问题很快就会解决。

答案 1 :(得分:-1)