Вот что я делаю в этом приложении iO7 или более поздней версии:
Когда пользователь открывает мое приложение, я хочу получить значение яркости экрана и полностью увеличить яркость. Когда пользователь покидает приложение, я хочу, чтобы яркость вернулась к предыдущему значению.
Пока я использую это:
-(void) applicationWillResignActive
{
[[UIScreen mainScreen] setBrightness:oldScreenBrightness];
}
-(void) applicationDidBecomeActive
{
screenBrightness = [UIScreen mainScreen].brightness;
[[UIScreen mainScreen] setBrightness:1.0];
}
Это работает нормально, за исключением того, что если пользователь регулирует яркость через Центр управления ВО ВРЕМЯ использования приложения, он все равно вернется к старой яркости при выходе из приложения, когда этого не должно быть.
Поэтому мне было интересно, могу ли я Key Value Observe [UIScreen mainScreen].brightness и проверить, было ли оно изменено пользователем, чтобы не возвращать его к старому значению....
UIScreenBrightnessDidChangeNotification
. Попробуйте. - person rmaddy   schedule 30.09.2014