Android - 删除状态栏

时间:2012-12-03 17:47:50

标签: android

为ICS(4.0.3)构建全屏应用程序,我需要完全删除状态栏。

我开始使用Eclipse模板(全屏活动)构建我的应用程序,但是当我点击应用程序时,我发现状态栏重新出现! - 我不想要这个!

我现在通过构建空白活动并将状态栏设置为新的透明(使用3个灯光按钮)来获取它

getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN | View.SYSTEM_UI_FLAG_LOW_PROFILE);

这是我用来实现这个的代码,任何完全删除它的方法?或者编辑全屏模板,以便在您单击或触摸时不显示?

干杯 理查德

2 个答案:

答案 0 :(得分:2)

在ICS上,需要考虑两个栏:导航栏(位于底部)和顶部的状态栏。使用应用程序主题完成状态栏删除。 (它也可以在代码中完成)。

导航栏的行为因ICS平板电脑和ICS手机而异。在ICS平板电脑上,导航栏无法删除 - 只能进入低调模式。在手机上可以移除NAV栏。你发布的代码应该这样做。

操作栏是第三种选择。我相信状态栏与某些示例中的操作栏显示/隐藏相关联。搜索WindowManager.LayoutParams.FLAG_FULLSCREEN(用于显示和隐藏代码中的状态栏)的出现次数,并编辑相应的代码。

编辑:oops。在3.0设备上花费太多时间...... API 16中的新功能:SYSTEM_UI_FLAG_FULLSCREEN。看起来像你想要的。

答案 1 :(得分:0)

尝试将以下主题添加到AndroidManifest.xml

上的活动声明中

对于浅色主题

<activity ...
     android:theme="@android:style/Theme.Holo.Light.NoActionBar.Fullscreen">
</activity>

对于黑暗主题

<activity ...
     android:theme="@android:style/Theme.Holo.NoActionBar.Fullscreen">
</activity>

如果您已经有主题,则可能需要扩展相应的主题。