如何判断android中是不是存在单独的状态栏?

Posted

技术标签:

【中文标题】如何判断android中是不是存在单独的状态栏?【英文标题】:How to determine whether a separate status bar exists in android?如何判断android中是否存在单独的状态栏? 【发布时间】:2012-03-21 06:46:20 【问题描述】:

我的应用可以选择进入全屏模式,即通过

隐藏状态栏
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, 
                     WindowManager.LayoutParams.FLAG_FULLSCREEN);

但是,在 Honeycomb 选项卡上,状态栏与具有软键(主页、返回、...)的栏结合在一起,因此无法隐藏。为避免混淆,我想在这些设备上隐藏全屏选项。我找不到如何确定我正在运行的设备是否有单独的状态栏。

【问题讨论】:

【参考方案1】:

也许这个post 会有所帮助。在 IWindowManager 类中有一个隐藏的 API 方法,名为 canStatusBarHide 和一个名为 hasNavigationBar 的方法,它们都返回布尔值,并且具有不言自明的名称。您需要使用反射来访问它们,因为它们在 SDK 中不可用。

【讨论】:

以上是关于如何判断android中是不是存在单独的状态栏?的主要内容,如果未能解决你的问题,请参考以下文章

Android 多窗口支持:检测状态栏是不是可见?

Android判断SD卡是不是存在的实现

Android中沉浸式状态栏的应用

如何判断视图的视图控制器是不是在 iOS7 的状态栏下方扩展

Android系统-SystemUI-Android10通过代码去控制系统状态栏的下拉

Android系统-SystemUI-Android10通过代码去控制系统状态栏的下拉