接收隐藏状态栏/在服务上输入全屏活动事件

时间:2013-08-31 17:52:06

标签: android overlay android-view android-windowmanager android-fullscreen

我有一项服务,可以向窗口管理器添加一些视图(比如facebook的聊天头)。即使我在相机应用程序上,这些视图始终保持最重要的一切。 是否可以知道某些活动(如相机或视频播放器)何时使用全屏,以便隐藏我的观点?

编辑:

有一些名为View.OnSystemUiVisibilityChangeListener但它需要API 11.我的目标是9,但看起来这正是我需要的。 API 9的任何替代方案?

1 个答案:

答案 0 :(得分:4)

好的,如果有人有兴趣,我就这样解决了我的问题: 为窗口管理器添加了透明视图,宽度为1px,match_parent高度为1px。然后为此视图添加了一个全局布局侦听器,每次布局发生更改时,我都会在屏幕上检查此视图的位置。如果Y为0,则状态栏不可见,因此必须运行全屏应用程序。这比原生的View.OnSystemUiVisibilityChangeListener更好用,因为似乎有些应用程序不知何故触发该方法(如新的雅虎天气)。