在我的今日通知中心扩展/小部件中,每次激活通知中心时,我都需要更新部分 UI。在使用通知中心时,它永远不需要更新,也不需要在后台更新。我应该以什么方法放置该代码?
viewDidLoad
并且viewWillAppear
在每次显示时都会被调用,例如,如果您向上和向下滚动它们将再次被调用,所以这太频繁了。
widgetPerformUpdateWithCompletionHandler
在第一次显示之前根本不会调用它(至少在 iOS 8.2 测试版中),并且只要 iOS 感觉更新 UI 时,就会自动调用此方法,即使它在后台也不合适。
loadView
仅被调用一次,除非从内存中删除小部件,否则永远不会再次调用。因此,如果您打开通知中心并查看小部件,然后关闭通知中心并稍后重新打开它,它可能不会再次调用该方法,具体取决于它是否已从内存中清除。