无法重置应用程序退出iOS的亮度
为什么我不能在applicationDidEnterBackground或applicationWillResignActive中设置屏幕亮度?
这是我的代码:
-(void)applicationDidEnterBackground:(UIApplication *)application { [[UIScreen mainScreen] setBrightness:1.0]; }
无法理解它!!? 它在applicationDidEnterForeground
等工作,而不是当我closures应用程序使用主页button。
有没有其他解决scheme来解决这个问题?
2016年8月更新:
无论应用程序是否closures,应用程序所做的亮度更改都会保持有效,直到设备被locking。 系统亮度(用户可以在“设置”或“控制中心”中设置)在下次打开显示器时恢复。
https://developer.apple.com/reference/uikit/uiscreen/1617830-brightness
原帖2012年7月:
退出前不允许设置亮度。 这是没有logging的任何地方,但在开发论坛上的以下post是有帮助的:
https://devforums.apple.com/thread/139813?start=0&tstart=0
应用程序背景时应该发生的情况是全系统亮度恢复。 有一个已知的错误,直到下一次closures和打开背光为止,这实际上并没有发生。
您可以通过将亮度设置为0并按主页键轻松地进行复制。 主屏幕将仍然非常黑暗。 locking,然后解锁您的设备,系统亮度恢复。
请提出一个关于这个错误! 在同一篇post上,一名苹果员工发布重复的错误报告是有帮助的。
我从来没有试图在applicationDidEnterBackground上设置屏幕亮度。
我认为你可以改变应用程序的亮度,通过使用黑色背景颜色的UIView的一切。 然后设置这个UIView的alpha。 那么结果看起来就像真实的屏幕亮度。
我使用这个替代方法,因为这个方法只适用于iOS5。
[[UIScreen mainScreen] setBrightness:1.0];
我也想支持iOS3,4。