在早期版本的Android中,必须在清单中使用:android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
才能使标题栏消失。
在较新的ADT版本中,我注意到了一个SystemUiHider
类,它允许您调用它的hide()
方法,不仅可以删除标题栏,还可以删除操作栏和导航栏。
我正在尝试编写一个全屏应用程序,我希望保持全屏(对于自助服务终端实施),除非按下一个小的隐藏按钮。
我尝试过使用标准的FullscreenActivity(从新的android项目向导生成),并阻止UI以多种方式重新出现:
mSystemUiHider.hide()
中调用setOnVisibilityChangeListener
(尝试在检测到可见性更改时立即隐藏UI)AUTO_HIDE_DELAY_MILLIS = 0
(如果可见则立即隐藏)mSystemUiHider.show();
的{{1}}方法中阻止对onClick
的调用(以防止其被显示)contentView.setOnClickListener
示例(如果显示或可见性发生变化,请再次尝试隐藏它)它们似乎都不起作用(当尝试其中任何一个时,Android默认为导航栏的低配置模式。
我知道他们可能不希望开发人员做我正在尝试做的事情,但我希望我可以扩展setSystemUiVisibility
(和/或SystemUiHider
)并覆盖{{ 1}}除非传递SystemUiHiderBase
标志,否则基本上不显示的方法。我似乎无法在这些类中找到任何文档(也许是因为它们是实用程序类?)。
答案 0 :(得分:1)