我的应用程序有一个Today Widget,但是我被告知有一个问题。
基本上,似乎正在发生的事情(我无法自己测试)是窗口小部件有时只会显示“无法加载”。而其他时候它只会显示高度为0。
我真的不明白为什么会这样。我已经在我的设备和模拟器上测试了几个星期,但从未遇到过这个问题。
我想知道它是否可能归结为刷新代码:
func widgetPerformUpdateWithCompletionHandler(completionHandler: ((NCUpdateResult) -> Void)!) {
// Perform any setup necessary in order to update the view.
var defaults = NSUserDefaults(suiteName: "group.AffordIt")
var newCheck = defaults.boolForKey("new")
if newCheck == true {
completionHandler(NCUpdateResult.NewData)
} else {
completionHandler(NCUpdateResult.NoData)
}
}
' newCheck'只要我的应用程序中的某些内容发生变化,就需要在窗口小部件中显示。
有谁知道这些问题的可能原因是什么?
答案 0 :(得分:2)
“无法加载”消息。您可以尝试通过再次删除和添加扩展来重新启用它。
答案 1 :(得分:1)
您使用自己的视图控制器和xib而不是使用故事板吗?如果是,可能是您没有在视图控制器中设置preferredContentSize。
尝试将以下代码放在ur view controller的init函数中:
self.preferredContentSize = CGSizeMake(320, 100);
我刚刚开始进行扩展编程,所以我不确定它对你是否真的有用。这是我自己的小部件中的结果:
答案 2 :(得分:0)