Android 在 Nexus 设备上隐藏软键

Android hide soft keys on nexus devices

我想在用户启动我的应用程序时隐藏软键栏(主页、后退、菜单)。我尝试使用:

getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION);

但不幸的是,一旦用户与我的应用程序交互,软键栏就会再次显示。有什么方法可以隐藏它直到用户退出我的应用程序吗?

这称为沉浸式模式。

查看:https://developer.android.com/training/system-ui/immersive.html

您要的代码是:

@Override
public void onWindowFocusChanged(boolean hasFocus) {
    super.onWindowFocusChanged(hasFocus);
    if (hasFocus) {
        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_HIDE_NAVIGATION
                        | View.SYSTEM_UI_FLAG_FULLSCREEN
                        | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY);
    }
}

开心???