研究调节屏幕亮度时遇到的问解决方案如下:
1、可以通过获取当前Activity 的WindowManager.LayoutParams 属性,然后设置其screenBrightness的值即可;
screenBrightness 的取值范围在[0,1]之间,具体可以如下操作:
2、有时我们需要用一个Seekbar控件来动态控制屏幕的亮度。
首先获取系统屏幕的最大值,然后设置seekbar的setMax。
然后在调节屏幕亮度函数中与seekbar进行绑定
3、当我们遇到把Activity做为子Activity潜入到TabActivity 或者 ViewGroup 类容器时,通常上面的方法设置无法取得成功,
活动滚动条的过程中,屏幕亮度不发生改变。
因为调节亮度作用域发生了改变,之前是在Activity里面对亮度修改, 而现在是作为子activity对TabActivity或ViewGroup 容器进行修改,因此不能成功,需要
通过getParent()方法获取器Parent,然后设置。