android - 如何在安卓平板电脑中隐藏底部系统栏

标签 android performance android-layout android-widget android-permissions

我正在开发一个仅适用于平板电脑的应用程序,要求在平板电脑的全屏上运行该应用程序。

为此,我在主要 Activity 中使用了以下代码:

getWindow().requestFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);

此代码 fragment 仅删除标题栏和操作栏。但在平板电脑中,有一个底部系统栏(有主页和后退按钮)。我也想删除或隐藏这个系统栏。

我已经搜索过,但只有以下解决方案:

  1. 没有用于删除或隐藏系统栏的 API。
  2. 您可以使用一些安卓应用来隐藏系统栏。 (例如: surelock、hidebar 等)

我的问题是:

  1. 在android中真的不行吗?
  2. 以上可用应用(即 surelock、隐藏栏等)也隐藏栏。 这意味着他们正在使用某些东西来这样做。可以用这个 我们应用程序中的某些内容,因此用户不需要下载这些 单独应用。

请指导我。

我知道这不是个好主意。但我的应用程序仅适用于 Android 4.0 或更高版本的平板电脑,平板电脑将只运行这个应用程序,因此我们不需要返回并使用主页按钮。这就是为什么我的要求是使用该应用程序全屏显示。

最佳答案

如果您有 root 访问权限,您可以使用此代码,否则它是不允许的

try{
    //REQUIRES ROOT
    Build.VERSION_CODES vc = new Build.VERSION_CODES();
    Build.VERSION vr = new Build.VERSION();
    String ProcID = "79"; //HONEYCOMB AND OLDER

    //v.RELEASE  //4.0.3
    if(vr.SDK_INT >= vc.ICE_CREAM_SANDWICH){
        ProcID = "42"; //ICS AND NEWER
    }



    //REQUIRES ROOT
    Process proc = Runtime.getRuntime().exec(new String[]{"su","-c","service call activity "+ ProcID +" s16 com.android.systemui"}); //WAS 79
    proc.waitFor();

}catch(Exception ex){
    Toast.makeText(getApplicationContext(), ex.getMessage(), Toast.LENGTH_LONG).show();
}

See this

关于android - 如何在安卓平板电脑中隐藏底部系统栏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16057096/

相关文章:

java - 如何从Android Firebase实时数据库中的一个节点检索所有数据?

c++ - 当我所做的只是将循环代码移动到函数中时,代码运行速度慢了十倍

android - 我的相机预览显示错误显示,我需要将此快照存储到 SD 卡中如何?

python - Django 渲染字典性能

mysql - 优化 MySQL 中的嵌套查询(特别是 GROUP BY)

java - Android:如何监听动态添加按钮的点击?

android - 如何在android中从下到上动画 View

android - 当在键盘上按下特定字符时,我可以切换到另一个 EditText 吗?

android - 如何停止拖动 View 的动画?

android - Android应用程序相对布局中的ImageButton问题