IOS退到后台修改亮度不成功

2017-10-19  本文已影响0人  andy_tu

执行步骤:1.当app执行- (void)applicationDidEnterBackground:(UIApplication*)application 去改变系统亮度,发现修改后无效。

后面在 - (void)applicationWillResignActive:(UIApplication*)application 修改才生效

还原亮度在 - (void)applicationDidBecomeActive:(UIApplication*)application 修改

@property(nonatomic,assign)intm_fOldBrightValue;

/**

* 功能:设置系统的亮度

*

*/

- (void)setSystemBrightness

{

/***保存系统原有的旧的亮度值***/

if(int([UIScreenmainScreen].brightness*100) >_NEW_BRIGHTNESS_VALUE)

return;

_m_fOldBrightValue=int([UIScreenmainScreen].brightness*100);

NSLog(@"m_fOldBrightValue1 = %d,NEW_BRIGHTNESS_VALUE = %d",_m_fOldBrightValue,_NEW_BRIGHTNESS_VALUE);

[[UIScreenmainScreen]setBrightness:_NEW_BRIGHTNESS_VALUE/100.0];

}

/**

* 功能:还原系统的亮度

*

*/

- (void)backSystemBrightness

{

/*还原前如果亮度值手动被修改了,就保持手动修改的。如果没有变就还原成进来的那个亮度值*/

CGFloatnBrightness = [UIScreenmainScreen].brightness;

NSLog(@"brightness = %f,m_fOldBrightValue = %d,NEW_BRIGHTNESS_VALUE = %d", nBrightness,_m_fOldBrightValue,_NEW_BRIGHTNESS_VALUE);

if(_NEW_BRIGHTNESS_VALUE!=int(nBrightness*10*10))

return;

dispatch_async(dispatch_get_global_queue(0,0), ^{

[[UIScreenmainScreen]setBrightness:_m_fOldBrightValue/100.0];

});

}

上一篇 下一篇

猜你喜欢

热点阅读