将屏幕亮度调至最低

问题描述 投票:0回答:2

我在尝试将屏幕亮度设置为最低时遇到问题。我的代码如下:

        WindowManager.LayoutParams params = w.getAttributes();
        params.screenBrightness = WindowManager.LayoutParams.BRIGHTNESS_OVERRIDE_OFF;
        w.setAttributes(params);

问题是,在某些设备中,屏幕会完全关闭,即使按下电源按钮也几乎不可能再次打开屏幕(幸运的是,屏幕会在一段时间后再次打开)。我对这种行为一无所知。

请帮忙。预先感谢。

弗兰。

android screen brightness
2个回答
3
投票

试试这个,

WindowManager.LayoutParams layout = getWindow().getAttributes();
layout.screenBrightness = 1F;
getWindow().setAttributes(layout);

还要查看官方文档 屏幕亮度

尝试以 0.1 精度更改

layout.screenBrightness = 0.1F
或 0.2F 等值。

我希望这能帮助您的需求。


0
投票

只需将其设置为零即可

private fun Window.setScreenBrightness(brightness: Float) {
    val lp = attributes
    lp.screenBrightness = brightness
    attributes = lp
}
© www.soinside.com 2019 - 2024. All rights reserved.