在Android Ice Cream Sandwich上隐藏状态栏

时间:2012-03-15 22:59:49

标签: android android-4.0-ice-cream-sandwich statusbar

我正在使用Android ICS的启动器,但我的平板电脑有问题。

我无法隐藏状态栏。我在Android 2.3.X中尝试过它没关系。该问题仅出现在Android 4.0中。

我该如何隐藏它?

6 个答案:

答案 0 :(得分:11)

您无法在Android 4.0中获得100%真实全屏。

使用以下方法调暗通知栏(也称为状态栏,系统栏)

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

用它来隐藏它

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

而且,如果我猜对了,你正试图实现“自助服务终端模式”。您可以通过名为“surelock”的应用获得一些帮助。这会阻止所有“主页”和“后退”操作。

它仍然不完美,但这可能是我们用Android ICS所能达到的最佳效果。

答案 1 :(得分:7)

可以在root用户设备上隐藏状态栏。程序Hidebar通过终止systemui进程来完成此任务。该程序是开源的,因此您可以在source code

中阅读所有相关内容

请参阅http://ppareit.github.com/HideBar/

答案 2 :(得分:5)

你无法摆脱平板电脑上的系统栏。您可以能够摆脱手机上的导航栏和状态栏。请阅读the Android 4.0 SDK release notes的“系统UI可见性控件”部分。

答案 3 :(得分:4)

我知道我的答案有点迟了,但是在收集了来自不同地方的信息之后,我想出了这个,它仅适用于根设备:

    private void    KillStatusBar()
{
    Process proc = null;

    String ProcID = "79"; //HONEYCOMB AND OLDER

    if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.ICE_CREAM_SANDWICH){
        ProcID = "42"; //ICS AND NEWER
    }

    try {
        proc = Runtime
                .getRuntime()
                .exec(new String[] { "su", "-c",
                        "service call activity "+ProcID+" s16 com.android.systemui" });
    } catch (IOException e) {
        Log.w(TAG,"Failed to kill task bar (1).");
        e.printStackTrace();
    }
    try {
        proc.waitFor();
    } catch (InterruptedException e) {
        Log.w(TAG,"Failed to kill task bar (2).");
        e.printStackTrace();
    }

}

这应该消除任何有根设备上的底栏并将其转换为“kiosk”模式。

答案 4 :(得分:1)

要在android 4.0中隐藏状态栏和导航栏,我们应该使用以下代码:

LinearLayout layout = (LinearLayout)findViewById(R.id.layout);
layout.setSystemUiVisibility(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION);

答案 5 :(得分:1)

以ppareit的答案为基础。

您无法隐藏大多数库存设备上的导航栏。但是,如果您可以选择生根设备,则可以解决此问题。以下是一个解决方案的步骤:

  1. Root device

  2. Install and run Busybox (required for taking full advantage of rooted device)

  3. Install HideBar from resource

  4. 在HideBar中有一个选项可以在“Kiosk”模式下运行,在该模式下无法重新显示导航栏。不用说,你确实需要小心这个