【发布时间】:2015-08-07 02:54:55
【问题描述】:
我正在尝试解决以下任务:亮度的平滑变化 从 100% 到 0%,但无法获得平滑效果。 想强调我正在使用以下亮度方法 改变。推荐的一款。
WindowManager.LayoutParams lp = window.getAttributes();
lp.screenBrightness = floatPercent;
window.setAttributes(lp);
嗯,它显然有效,但并不顺利。 我将描述逻辑:
我有一个改变亮度的线程:
while (isRunning()) {
Thread.sleep(sleepTime);
spentTime+=sleepTime;
view.post(new Runnable() {
public void run() {
changeBrightness();
}
});
}
我有亮度变化的持续时间,例如 10 秒。
我计算floatPercent 的下一个值(参见上面的代码 sn-p)
方式,sleepTime 应始终小于 50 毫秒。
所以看起来它必须是光滑的。
但我总是不能顺利过渡。它特别涉及范围
0% - 5% 的亮度。平滑度在此完全丧失
亮度范围。
我已经在 Google Android Developer group 上发布了这个问题,但无论如何可能有人已经在这方面进行了调查。
【问题讨论】:
-
可能手机无法以每 50 毫秒为线程提供处理器时间的速度进行多任务处理。