我在用着
[[UIApplication sharedApplication] setIdleTimerDisabled: YES];
防止应用程序进入空闲状态,但是当我发出
[[UIApplication sharedApplication] setIdleTimerDisabled: NO];
该应用程序直接进入空闲状态。
此时有没有办法重新启动计时器?
我在用着
[[UIApplication sharedApplication] setIdleTimerDisabled: YES];
防止应用程序进入空闲状态,但是当我发出
[[UIApplication sharedApplication] setIdleTimerDisabled: NO];
该应用程序直接进入空闲状态。
此时有没有办法重新启动计时器?
不,没有办法重新启动计时器。也许您应该考虑您的应用程序是否真的需要这样做。苹果引用:
“唯一应该禁用空闲计时器的应用程序是映射应用程序、游戏或具有零星用户交互的类似程序。”
如果您的应用确实需要关闭 idleTimer,那么它可能会一直关闭直到应用进入后台?
您可以尝试在定时事件结束时添加警报
UIAlertView *myAlert = [[UIAlertView alloc] initWithTitle:@"Timer Complete" message:@"Timer ended, well don you" delegate:nil cancelButtonTitle:@"OKAY" otherButtonTitles:nil];
[myAlert show];
[myAlert release];
如果您使用 ARC,请忽略该版本。这可能会点亮屏幕备份,那么也许您不需要弄乱空闲计时器。
对于提出这个问题的人来说,这显然为时已晚,但对于其他正在寻找的人来说,对我有用的是这样做:
[[UIApplication sharedApplication] setIdleTimerDisabled:NO];
[[UIApplication sharedApplication] setIdleTimerDisabled:YES];
[[UIApplication sharedApplication] setIdleTimerDisabled:NO];
一个接一个地包含所有三行会以某种方式重置计时器。因此,计时器不会在立即收到 setIdleTimerDisabled:NO 时变暗,而是需要一段时间才能变暗。