如何从包含的应用程序更新我的iOS Today小部件?

时间:2015-03-08 11:57:24

标签: ios ios8-today-widget notificationcenter

我在我的iOS应用程序的下一个版本中包含了一个Today扩展。仅当用户对包含应用程序管理的数据库进行特定更改时,窗口小部件的内容才会更新。

有没有办法从包含应用程序向Today小部件进程发送某种信号,让它知道它的数据已经失效,并且下次用户下拉通知中心时应该重新加载?< / p>

1 个答案:

答案 0 :(得分:1)

您不需要自己更新小部件,iOS会尝试定期更新小部件。 iOS每次执行此操作时,都会调用窗口小部件中的函数。这是功能:

func widgetPerformUpdateWithCompletionHandler(completionHandler: ((NCUpdateResult) -> Void)!)

如果您的数据已更改,请致电

completionHandler(.NewData)

否则,如果您的数据未发生变化,请致电

completionHandler(.NoData)

那就是它!并且不要在该功能中做任何需要大量时间的事情,因为iOS可能会杀死&#34;那么你的小部件。