Я использую [[UIScreen mainScreen]setBrightness: ]
(в SDK 5.0), чтобы изменить фоновый свет системы в моем приложении.
Следующие шаги работают с моим приложением
Активируйте приложение, установите системную яркость по умолчанию, затем сохраните как
sysBright
.Измените яркость с помощью моего приложения, измените яркость, затем сохраните как
appBright
.Приложение ResignActive с кнопкой «Домой» или кнопкой блокировки, установите яркость на
sysBright
(значение шага 1, яркость системы по умолчанию).Снова активное приложение. Затем он повторит вышеуказанные шаги с 1 по 3.
Что-то не так с шагом 3, когда я деактивирую приложение кнопкой блокировки, функция applicationWillResignActive
работает хорошо, она может восстановить значение яркости (sysBright
).
Но когда я нажимаю кнопку домой, он больше не работает. Яркость по-прежнему имеет значение, которое я изменил в своем приложении. (appBright
)
Кто-нибудь знает об этом? Спасибо за любую помощь ~
Вот код:
float appBright,sysBright;
- (void)applicationDidBecomeActive:(UIApplication *)application
{
sysBright = [[UIScreen mainScreen] brightness];
[[NSUserDefaults standardUserDefaults] setFloat:sysBright forKey:@"sysBright"];
[[UIScreen mainScreen] setBrightness:appBright];
}
//doesn't work when i ResignActive with the home button
- (void)applicationWillResignActive:(UIApplication *)application
{
[[NSUserDefaults standardUserDefaults] floatForKey:@"sysBright"];
[[UIScreen mainScreen] setBrightness:sysBright];
}