当应用程序处于前台时,Apple 钱包会设置全亮度。当应用程序进入后台或终止时,它将重置为正常亮度。
我想用我的应用程序实现相同的功能。
我尝试[[UIScreen mainScreen] setBrightness:1.0];
让应用程序所做的亮度更改保持有效,直到设备被锁定。
如果我的应用程序处于前台模式,我想设置全亮度,否则亮度将重置为以前的亮度级别。
当应用程序处于前台时,Apple 钱包会设置全亮度。当应用程序进入后台或终止时,它将重置为正常亮度。
我想用我的应用程序实现相同的功能。
我尝试[[UIScreen mainScreen] setBrightness:1.0];
让应用程序所做的亮度更改保持有效,直到设备被锁定。
如果我的应用程序处于前台模式,我想设置全亮度,否则亮度将重置为以前的亮度级别。
这一切最终都不起作用,请参阅编辑
如果您所做的是在打开应用程序时设置高亮度,然后在存在时恢复以前的亮度,您可以执行以下操作AppDelegate
:
添加一个CGFloat previousBrightness
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
previousBrightness = [[UIScreen mainScreen] brightness];
[[UIScreen mainScreen] setBrightness:1.0];
return YES;
}
和
- (void)applicationDidEnterBackground:(UIApplication *)application {
[[UIScreen mainScreen] setBrightness:previousBrightness];
}
编辑 :
经过一番研究,我发现iOS中实际上存在一个错误,阻止您在退出应用程序后更改亮度。该错误自 iOS 4 以来已报告,并且在我尝试在 iOS 8 上时似乎没有得到解决,但它仍然无法正常工作......
有关该错误的更多信息,请参阅Apple 开发论坛上的此线程。
您唯一能做的就是为您需要的单个步骤设置全亮度,并在用户不再需要时重置。例如,在许多应用程序中,我们在查看 QR-Code 时具有全亮度,然后在单击十字“X”退出时恢复到以前的亮度。
您可能需要以某些方式重新考虑您的应用程序,但在用户单击主页按钮后您将无法恢复亮度。