我希望我的应用能够显示永久可见的视图(如状态栏),无论用户使用哪个应用,除了游戏等全屏应用。
到目前为止,我的应用程序启动了一项服务,该服务使视图膨胀并将其作为TYPE_SYSTEM_OVERLAY添加到WindowManager,如here所述。
我遇到的问题是,当我启动全屏应用程序(画廊,愤怒的小鸟等)时,我的叠加层仍然存在。如何检测何时启动全屏应用程序或何时隐藏状态栏以便将其删除?
答案 0 :(得分:1)
第三方应用不支持此功能,抱歉。
答案 1 :(得分:1)
在您的服务中,创建一个计时器,该计时器不断测量其膨胀的视图的高度。如果视图的高度增加25dip,则可能意味着状态栏消失,手机现在处于全屏模式。如果发生这种情况,您可以将叠加视图的可见性设置为GONE。
显然,查看视图高度是一种破解,但这可能是唯一的方法。