在Android中实现亮度逐渐衰减的清洁方式?

在Android中实现亮度逐渐衰减的清洁方式?,第1张

概述目前我有代码来淡化亮度调整,看起来像这样: new Thread() { public void run() { for (int i = initial; i < target; i++) { final int bright = i; handle.post(new Runnable() { 目前我有代码来淡化亮度调整,看起来像这样:
new Thread() {    public voID run() {        for (int i = initial; i < target; i++) {            final int bright = i;            handle.post(new Runnable() {                public voID run() {                    @R_404_5987@ currentBright = bright / 100f;                    window.getAttributes().screenBrightness = currentBright;                    window.setAttributes(window.getAttributes());                });            }            try {                sleep(step);            } catch (InterruptedException e) {                e.printstacktrace();            }        }    }}.start();

我不知道这是否被认为是很好的方法(我认为使用ASyncTask,但在这种情况下我看不到好处).有没有更好的方法来实现背光衰落?

编辑:我正在使用TimerTask如下:

new Timer().schedule(new TimerTask() {    @OverrIDe    public voID run() {        final @R_404_5987@ currentBright = counter[0] / 100f;        handle.post(new Runnable() {                public voID run() {                window.getAttributes().screenBrightness = currentBright;                window.setAttributes(window.getAttributes());                if (++counter[0] <= target) {                    cancel();                }            }        });    }},step);

我为计数器使用数组的原因是因为它需要在Runnable中被访问,但是我需要修改该值.这使用较少的cpu,但仍然超过我喜欢.

EDIT2:Aaa和第三次尝试.感谢CommonsWare的建议! (我希望我正确地应用它!)

handle.post(new Runnable() {        public voID run() {            if (counter[0] < target) {                final @R_404_5987@ currentBright = counter[0] / 100f;                window.getAttributes().screenBrightness = currentBright;                            window.setAttributes(window.getAttributes());                counter[0]++;                handle.postDelayed(this,step);            }        }   });

谢谢!

解决方法 在每次迭代中如何将亮度降低到一半.

那么在当前解中,循环将在O(log n)而不是O(n)中完成.

总结

以上是内存溢出为你收集整理的在Android中实现亮度逐渐衰减的清洁方式?全部内容,希望文章能够帮你解决在Android中实现亮度逐渐衰减的清洁方式?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1132736.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-30
下一篇 2022-05-30

发表评论

登录后才能评论

评论列表(0条)

保存