zoukankan      html  css  js  c++  java
  • android调节屏幕亮度

    一:只改变当前程序android屏幕亮度
    (1)方法:
    lp.screenBrightness 取值 0.0 -- 1.0 ※设定值(float)的范围,默认小于 0(系统设定)、0.0(暗)~1.0(亮) ※调用处理的地方,例如, Activity.onCreate()等等

    代码:
    WindowManager.LayoutParams lp = getWindow().getAttributes();

    lp.screenBrightness = 1.0f;

    getWindow().setAttributes(lp);

      注:1、b是一个浮点数 从0~1 ,表示亮度
             2、当我们遇到把Activity做为子Activity潜入到TabActivity 或者 ViewGroup 类容器时,通常上面的方法设置无法取得成功。
                  在子Activity中,屏幕亮度不发生改变。因为调节亮度作用域发生了改变,之前是在Activity里面对亮度修改。
                  而现在是作为子activity对TabActivity或ViewGroup 容器进行修改。
                  因此不能成功,需要通过getParent()方法获取器Parent,然后设置。
              3、


    (2)恢复

    当离开当前Acitivity时,屏幕亮度会恢复到原先的亮度。另外将lp.screenBrightness 设为 -1(WindowManager.LayoutParams.BRIGHTNESS_OVERRIDE_NONE),也会让屏幕恢复到原先的亮度(即系统设置)。


    (3)最小亮度

    WindowManager.LayoutParams.BRIGHTNESS_OVERRIDE_NONE,官方文档说这个值可以将屏幕亮度设置到最低亮度(Lowest Brightness)。实际意识是将屏幕设置到全黑,屏幕也无法响应触控了。
    在G3(CM6)上,将屏幕设置到最低亮度值是0.004(精度0.001),这时屏幕基本全黑,但仍能控制。低于0.004(精度0.001)时,屏幕便失去控制。0.01也是个要记录的值,屏幕亮度足够低,当仍能看到东西。这些值应该是和设备有关的,不能乱设。
  • 相关阅读:
    3.4
    3.3 TensorFlow运行模型 ------- 会话
    3.2 TensorFlow数据模型 ---- 张量
    3.1 TensorFlow计算模型 --- 计算图
    寻找两个有序数组的中位数
    最长子串
    vector的遍历删除
    超时空大决战
    面经七
    面经五
  • 原文地址:https://www.cnblogs.com/netcorner/p/4667315.html
Copyright © 2011-2022 走看看