获取当前屏幕亮度

时间:2016-11-20 23:12:07

标签: ios swift brightness

有谁知道如何获取用户当前的屏幕亮度或暂时改变一个视图的亮度?

当用户启动特定视图时,屏幕会变暗至可能的最低亮度。在这种情况下,我使用:

UIScreen.mainScreen().brightness = CGFloat(0.0)

但我想知道,当用户关闭视图时,亮度会恢复到原来的状态。

使用此功能的应用是Stocard。查看卡片的条形码时,屏幕的亮度会亮到最大,当条形码视图解除时,屏幕的亮度会恢复到用户之前的状态。

如果有人知道如何在Swift 2.3中做到这一点会很棒。

3 个答案:

答案 0 :(得分:4)

获取当前屏幕亮度 Swift 3

    let currentBrightness = UIScreen.main.brightness  

设置screenbrightness Swift3

    UIScreen.main.brightness = CGFloat(0.7)  

范围是0.0 - 1.0,与apple documentation site

相同

答案 1 :(得分:2)

您正在寻找UIScreen课程。

只需访问主屏幕即可获得如下属性:

UIScreen.mainScreen().brightness

let currentBrightness = UIScreen.mainScreen().brightness

(除了获取亮度属性外,您还可以设置亮度属性)

答案 2 :(得分:0)

您需要在NSUserDefaults中保存自己想要设置的值,并在应用程序委托的applicationDidBecomeActive:方法中调用setBrightness:恢复亮度。