6

我有一个使用摄像机的应用程序,因此屏幕不会变暗。禁止屏幕变暗可以正常工作,如下所示:

- (void)applicationDidBecomeActive:(UIApplication *)application
{
    [[UIApplication sharedApplication] setIdleTimerDisabled:YES];
}

但是,当应用程序关闭并进入后台时,将 IdleTimer 设置回 NO 不起作用。屏幕在主屏幕上永久显示。这就是我试图做到这一点的方式。

- (void)applicationWillResignActive:(UIApplication *)application
{
    [[UIApplication sharedApplication] setIdleTimerDisabled:NO];
}

有没有更好的地方添加这行代码?

4

3 回答 3

16

我也出现了同样的问题。实际上它确实有效,但仅在您的设备未连接到 xCode 时才有效。尝试断开设备,然后测试此功能。

于 2013-10-22T09:52:15.097 回答
0

你为什么不尝试使用你的代码

applicationWillEnterForeground

委托方法。

希望这份工作适合你。

于 2013-02-26T11:42:01.827 回答
-1

斯威夫特版本:

public func applicationWillResignActive(application: UIApplication) {
    UIApplication.sharedApplication().idleTimerDisabled = false
}


public func applicationDidBecomeActive(application: UIApplication) {
    UIApplication.sharedApplication().idleTimerDisabled = true
}
于 2016-05-11T08:55:24.647 回答