如何在LibGDX中隐藏导航栏?

如何在LibGDX中隐藏导航栏?,libgdx,screen,Libgdx,Screen,基本上这就是问题所在。当我在没有物理主页按钮的手机上运行应用程序时,如何隐藏导航栏?顺便说一下,我正在运行android 5(我不知道这是否会改变什么。) 如果您知道如何操作,请回答:)自即日起,LibGDX与状态栏不同,没有用于隐藏导航栏的抽象。(它在类中有一个状态栏控件。)您应该在Android的包装器应用程序中进行隐藏 这是链接:有你的答案 这些步骤是: 将hideVirtualButtons()方法添加到AndroidLauncher.java: @TargetApi(19) p

基本上这就是问题所在。当我在没有物理主页按钮的手机上运行应用程序时,如何隐藏导航栏?顺便说一下,我正在运行android 5(我不知道这是否会改变什么。)


如果您知道如何操作,请回答:)

自即日起,LibGDX与状态栏不同,没有用于隐藏导航栏的抽象。(它在类中有一个状态栏控件。)您应该在Android的包装器应用程序中进行隐藏

这是链接:

有你的答案

这些步骤是: 将hideVirtualButtons()方法添加到AndroidLauncher.java:

    @TargetApi(19)
private void hideVirtualButtons() {
    getWindow().getDecorView().setSystemUiVisibility(
              View.SYSTEM_UI_FLAG_LAYOUT_STABLE
            | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
            | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
            | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY
            | View.SYSTEM_UI_FLAG_FULLSCREEN
            | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION);
}
从AndroidLauncher.java中的onCreate()调用hideVirtualButtons:

public void onCreate() {
    ....
    // In KITKAT (4.4) and next releases, hide the virtual buttons
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
        hideVirtualButtons();
    }
}
@Override
public void onWindowFocusChanged(boolean hasFocus) {
    super.onWindowFocusChanged(hasFocus);
    if (hasFocus) {
        // In KITKAT (4.4) and next releases, hide the virtual buttons
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
            hideVirtualButtons();
        }
    }
}
并重写AndroidLauncher.java中的函数onWindowFocusChanged():

public void onCreate() {
    ....
    // In KITKAT (4.4) and next releases, hide the virtual buttons
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
        hideVirtualButtons();
    }
}
@Override
public void onWindowFocusChanged(boolean hasFocus) {
    super.onWindowFocusChanged(hasFocus);
    if (hasFocus) {
        // In KITKAT (4.4) and next releases, hide the virtual buttons
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
            hideVirtualButtons();
        }
    }
}

如果您需要一些解释,请访问。我知道这是一个老问题,但是对于任何在这里找到方法的人来说,libGDX现在有一个非常简单的方法来实现这一点。只需在AndroidLauncher类中设置此字段

config.useImmersiveMode = true;

谢谢你的回答!