Android 在 Nexus 设备上隐藏软键

标签 android user-interface navigation hide system

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

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);
    }
}

快乐???

关于Android 在 Nexus 设备上隐藏软键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29181671/

相关文章:

Android sqlite 数据库等待初始数据填充完成

android - setIconified(false) 强制关闭我的应用

android - 如何补偿 RelativeLayout 中的状态栏?

java - 在 Windows 7 64 位上安装 JGR(R 的 GUI)

wordpress - wordpress wp_nav_menu container_class 中的多个类

html - 使用 CSS 使页脚正确 float

php - 如何使 GET web 服务更安全

java - 如何获取 map 上点击位置的 GeoPosition?

java - 如何绑定(bind)swing.JTextArea到PrintStream接受数据

html - 防止 HTML 内容重叠