剂量NSTimer可用于Today Extension(Widget)吗?

vcL*_*wei 4 ios ios8 ios-app-extension today-extension

我想在今日扩展中使用NSTimer来刷新小部件,但我不知道剂量这种行为是否合法?

我做了一个演示使用NSTimer来计算并每1秒刷新一次窗口小部件UI,看起来像是工作,但问题是当用户退出通知中心时,计时器仍在运行,何时何地应该停止计时器?

Ken*_* Ko 6

我也可以确认这种方法适合我.

override func viewDidDisappear(animated:Bool) {
    // stop the timer here when notification center is closed
}
Run Code Online (Sandbox Code Playgroud)

有趣的是,viewWillDisappearviewDidDisappear都只要你开始向上滑动即可关闭通知中心召集了一个又一个(按顺序).这意味着,虽然通知中心和您的小部件在屏幕上仍然可见(如果您将手指放在拖动手柄上)viewDidDisappear已经被调用.

  • 在相关的说明中,当打开通知中心时,每次通知中心处于完全打开状态时,调用相关方法的顺序是`viewDidLoad`,`widgetPerformUpdateWithCompletionHandler`,`viewWillAppear`和所有3个被调用 (2认同)