我想在今日擴展中使用NSTimer來刷新小部件,但我不知道劑量這種行爲是否合法?劑量NSTimer可用於今日擴展(小工具)?
我做了一個演示,使用NSTimer每1秒計算並刷新小部件用戶界面,看起來像是工作,但問題是當用戶退出通知中心時,定時器仍在運行,何時何地應該停止定時器?
我想在今日擴展中使用NSTimer來刷新小部件,但我不知道劑量這種行爲是否合法?劑量NSTimer可用於今日擴展(小工具)?
我做了一個演示,使用NSTimer每1秒計算並刷新小部件用戶界面,看起來像是工作,但問題是當用戶退出通知中心時,定時器仍在運行,何時何地應該停止定時器?
我也可以確認這種方法對我很好。
override func viewDidDisappear(animated:Bool) {
// stop the timer here when notification center is closed
}
有趣的是,viewWillDisappear
和viewDidDisappear
都只要你開始向上滑動即可關閉通知中心召集了一個又一個(按順序)。 這意味着雖然通知中心和您的小部件仍然可以在屏幕上看到(如果您的手指保持在拖動手柄上)viewDidDisappear
已被調用。
在相關說明中,打開通知中心時,相關方法的調用順序爲viewDidLoad,widgetPerformUpdateWithCompletionHandler,viewWillAppear,每當通知中心處於完全打開狀態時調用全部3個 – 2014-10-28 11:36:19
仍然不知道這是行爲合法性,但我發現蘋果不會將標誌NS_EXTENSION_UNAVAILABLE添加到NSTimer,所以我認爲我們可以在Today Extension中使用NSTimer。然後我認爲這是在viewWillAppear中啓動計時器的好方法:並且在viewWillDisappear中停止計時器,它對我來說非常合適。 – vcLwei 2014-09-21 14:05:49