我有一个应用程序,必须保持清醒直到倒计时结束,但只要它达到分配的睡眠时间,它将进入"睡眠模式".
在我的应用程序中,我可以选择推迟睡眠,因此用户可以禁用/启用它.
我该如何以编程方式执行此操作?
jrt*_*ton 372
您可以按如下方式禁用空闲计时器;
在Objective-C中:
[UIApplication sharedApplication].idleTimerDisabled = YES;
Run Code Online (Sandbox Code Playgroud)
在Swift中:
UIApplication.sharedApplication().idleTimerDisabled = true
Run Code Online (Sandbox Code Playgroud)
在Swift 3.0和Swift 4.0中:
UIApplication.shared.isIdleTimerDisabled = true
Run Code Online (Sandbox Code Playgroud)
将其重新设置为NO或false重新启用睡眠模式.
例如,如果您在离开视图之前需要它,可以通过覆盖viewWillDisappear将其设置为:
override func viewWillDisappear(_ animated: Bool) {
UIApplication.shared.isIdleTimerDisabled = false
}
Run Code Online (Sandbox Code Playgroud)
有关UIApplication Class的更多信息.
Wye*_*tro 20
在Swift 3中,为了禁用空闲计时器,它现在是:
UIApplication.shared.isIdleTimerDisabled = true
Run Code Online (Sandbox Code Playgroud)
要重新打开空闲计时器,它只是:
UIApplication.shared.isIdleTimerDisabled = false
Run Code Online (Sandbox Code Playgroud)
另外,请注意YES并且NO在Swift中不可用,并且您必须使用true或者false(与之前的答案相反).
| 归档时间: |
|
| 查看次数: |
64908 次 |
| 最近记录: |