我的问题是我无法弄清楚如何让我的整个扩展程序显示出来。它应该显示四行,但它总是像这样切断:
我读了一些帖子并尝试了preferredContentSize,但它也不起作用:
func widgetPerformUpdate(completionHandler: (@escaping (NCUpdateResult) -> Void)) {
self.preferredContentSize = CGSize(width: 0, height: 400)
completionHandler(NCUpdateResult.newData)
}
令我感到沮丧的是,我甚至不需要preferredContentSize,因为我设置了自动布局限制!
您会注意到底部约束是虚线,因为它当前设置为999优先级但我也尝试过1000。
我该如何解决这个问题?请帮忙!!
答案 0 :(得分:1)
我知道你在说什么,我也有同样的问题。
我认为您的小部件不能高于设备的某个高度。但您可以启用扩展模式,您可以在其中切换窗口小部件的紧凑视图和展开视图。
我想它应该从过大的小部件中清除今天的视图。
本文将为您提供帮助:https://forums.developer.apple.com/thread/48930
重要的部分是:
self.extensionContext?.widgetLargestAvailableDisplayMode = .expanded
func widgetActiveDisplayModeDidChange(_ activeDisplayMode: NCWidgetDisplayMode, withMaximumSize maxSize: CGSize) {
if (activeDisplayMode == .compact) {
self.preferredContentSize = maxSize;
}
else {
self.preferredContentSize = CGSize(width: 359, height: 200)
}
}