- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
以下工作代码在接收 BOOT_COMPLETED 广播的 BroadcastReceiver 中运行。
//Create a transparent, untouchable view and attach it to the system-level Window Manager
//We will force this overlay into Landscape orientation.
final View view = new View(context);
int dimension = 0;
int pixelFormat = PixelFormat.TRANSLUCENT;
final WindowManager.LayoutParams params = new WindowManager.LayoutParams(
dimension, dimension,
WindowManager.LayoutParams.TYPE_SYSTEM_OVERLAY,
WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL
| WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE,
pixelFormat);
params.screenOrientation = ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE;
final WindowManager wm = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE);
wm.addView(view, params);
这旨在强制设备进入横向模式以供专门使用(不部署在 Android 市场上。这仅用于我的设备。)
我的问题是覆盖偶尔会消失。似乎没有特定的原因。它发生在应用程序中,或者有时看似随机。这会将其设置回纵向模式并导致问题。
有没有一种方法可以防止这种情况发生或观察它并在它发生时重新附加 View ?
目标设备运行的是4.0.3
最佳答案
可能发生的情况是,由于您的 View 附加在 BroadcastReceiver 中,因此应用程序本身会在其余时间“停止”,并且当 Android 决定它需要内存时,会立即停止它。这实际上可能不是原因,因为您确实有一个 View 总是显示,但由于它不是 Activity 的一部分,系统可能会以不同的方式处理它。
话虽如此,这就是我将尝试做的事情:
子类化您首选的 View 类并覆盖 onDetachedFromWindow()
,以便在调用该方法时记录/打印。如果,当这种奇怪的覆盖消失发生时 onDetachedFromWindow()
被调用,然后确定一种将 View 重新添加到 WindowManager 的方法。您可以发送广播以供 BroadcastReceiver 接收,或创建类似 Listener
的接口(interface)来分派(dispatch)分离的事件。该接口(interface)随后将由您的应用程序的长期运行部分(服务)实现。
您还可以查看当叠加层消失时 OrientationEvenListener
是否做了任何有趣的事情。
如果一切都失败了,您可以定期重新添加 View 。这不是最佳解决方案,但它确实可以确保覆盖重新出现。
上述方法也可以在长时间运行的前台服务中实现,以确保 Android 优先处理您的应用程序,不会很快杀死它。
关于android - 窗口管理器的透明 View 覆盖 "falls off"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20207304/
我制作了一个不透明度为 30% 的表单,我希望它覆盖在我的屏幕上,这样我就可以在上面绘制一个网格,同时仍然能够控制下面的任何程序。所以我希望我用网格创建的表单忽略我的鼠标事件,这样我就可以点击进入下面
我在一个放置在控件下的窗体上有一个面板。我将使用该面板绘制从黑色到透明的渐变,以模拟从控件转换的阴影。但是,面板下方会有其他控件,并且面板会捕获针对其下方面板的点击。 我怎样才能获得点击以“穿过”面板
我实现了这个有趣的页面: http://www.xthema.it/misc/christmas-matrix.html 我重试了三种不同的方式,但每次我都无法通过 Firefox 获得良好的性能结果
为什么当我大幅缩小时我的网站会“崩溃”? 是否有某些 CSS 属性可以解决这个问题? 这是指向相关网页的链接: http://www.raycavanaugh.com/per%20word.html
爱情就像是一团火焰,而我们就像是飞蛾。虽然知道自己可能会粉身碎骨,但是还是义无反顾的向前冲不回头。不过恋爱经历那两个月甜蜜期以后就是正常的了,所以很多人能够恋爱却走不到最后。
我尝试创建一个效果视频,例如:花落。我有一个主视频(main.mp4)和一个效果视频(flower_fall.mp4)。我想制作一个将 2 个视频合并的 output.mp4 视频,结果看起来主视频是
我正在处理汉字。我的某些字符不存在于 Unicode 中。我正在使用 PUA .ttf 来支持我的非通用字符。 当我打电话 UIFont fontWithName:@"BabelStoneHanPUA
TL; 博士 customize 中是否有一些标准的回退处理? 系统,用于处理部分无效的复合定制 变量,例如一个条目不是缺点的列表? 长版 emacs 的自定义机制非常强大,使用 复合 Materia
什么//$FALL-THROUGH$ Eclipse 中的评论是什么意思?我做了谷歌,但找不到任何东西。 最佳答案 它抑制了一个警告,告诉您没有 break;来自 case . 关于eclipse -
当我必须编写多个条件语句时,我通常使用 switch 语句,通常有三个或更多明确定义的条件。 但是,要处理包含失败行为的双条件语句,我经常在简单的if、else if、else 语句和 之间犹豫不决切
以下工作代码在接收 BOOT_COMPLETED 广播的 BroadcastReceiver 中运行。 //Create a transparent, untouchable view and att
这是我第一次尝试在面包板上编写 Raspberry Pi 和硬件按钮的代码。程序很简单,当检测到按下按钮时,打开面包板上的 LED 1 秒钟。我的代码似乎有效,但奇怪的是,每隔一段时间按下一个按钮就会
在第9讲中,老师说numberOfSectionsInTableView:方法默认返回1,但是当我创建自己的项目时,发现它默认返回0,导致我的表格 View 单元格消失了!我找到了问题所在,并通过使
所以我应该为大学项目制作一个 Javascript 版本的落石游戏。玩家控制一个矩形,该矩形应该从左向右移动而不会被掉落的物体击中。到达每一侧都会增加分数,而被击中则会减少分数。比赛结束为 0 分。
目前我正在开发一个应用程序,它从 Twitter API 读取流并将其解析为对象。目前我读取流并使用 DataContractJsonSerializer 中的 ReadObject(...) 制作我
我使用 Eclipse,所以对我来说,使用 //$FALL-THROUGH$ 注释是 switch 语句等的常见做法。但是我的同事使用 Netbeans 并质疑我到底用这些做什么。试图用谷歌搜索任何带
我正在解析文本文档并将大部分数据转换为关系格式。整个过程中使用了多种日期格式,但其中之一是“1997 年秋季”。 存储此信息的最佳方法是什么,该信息在某种意义上是非特定的(不是绝对日期),同时又不会丢
我想创建一个 UIView 来为下雨设置动画,它应该高于所有其他 View ,在最前面,但是透明的,并且它不应该在所有,因此在我实现它之前,点击它背后的 UI 的行为应该与现在完全一样。它会充当覆盖层
这个问题在这里已经有了答案: 关闭 10 年前。 Possible Duplicate: Why was the switch statement designed to need a break?
题目地址:https://leetcode.com/problems/minimum-falling-path-sum/description/ 题目描述 Given a square array
我是一名优秀的程序员,十分优秀!