I use [[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];
}
iOS 并不打算保留应用程序内的亮度值。它应该在应用程序退出活动、退出、崩溃等后恢复系统值。因此,官方不需要在 applicationWillResignActive 中执行此操作。
但这不起作用。这是一个错误。事实上,如果您切换到另一个应用程序(按两次主页按钮并选择另一个应用程序),它就会起作用
不要浪费时间,只需向 Apple 提交错误报告即可(我做得很好)。
解锁屏幕恢复默认系统亮度。只需按两次电源按钮并解锁即可恢复原始亮度。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)