我創建了一個4:00分鐘倒數計時器,並在達到0:00時發出聲音信號。我使用了一個功能,可以在定時器運行時防止手機進入睡眠狀態。但是,這是我的應用程序的最後一個屏幕。所以一旦acoustig最終信號結束,我想應用程序緩慢關閉。我不知道在哪裏放置代碼。斯威夫特:倒計時後關閉應用程序
這是我用來防止它入睡代碼:
override func viewDidLoad() {
super.viewDidLoad()
UIApplication.sharedApplication().idleTimerDisabled = true
}
所以我想我可以使用
UIApplication.sharedApplication().idleTimerDisabled = false
扭轉它。當我將它放入stopTimer函數內時,它將在0:00立即關閉。
func stopTimer() {
if count == 0 {
timer.invalidate()
timerRunning = false
playSound()
timerLabel.text = "DONE"
}
}
也許有一種方法可以延遲進程,使其在15秒後關閉。我該怎麼做呢?
你可以簡單地把它在一個'dispatch_after'-block:http://stackoverflow.com/questions/24034544/dispatch-after-gcd-in-swift – luk2302
我還是不確定你是否希望在計時器運行後立即進入睡眠狀態或者如果你想「順利」*在定時器耗盡後等待15秒左右進入休眠狀態。你想要哪一個? – luk2302
@ luk2302:在15-30秒之後,當定時器耗盡後沒有用戶活動時,可以順利進行。 – mojomo