在iOS 10中设置preferredContentSize.height直接不起作用
在iOS 10之后,有两种类型可以显示今天的扩展名
案例1显示更多(扩展类型,可以设置自定义高度)
case 2 Show Less(紧凑型,默认为hegiht)
iOS 10中有什么新功能
所以你应该为iOS 10早期版本和iOS 10提供高度
if #available(iOSApplicationExtension 10.0, *) { //setup display mode (show more(.expended) or show less(.compact)) extensionContext?.widgetLargestAvailableDisplayMode = .expanded } else { // Fallback on earlier versions preferredContentSize.height = 200 }
并为自定义高度实施
func widgetActiveDisplayModeDidChange(_ activeDisplayMode: NCWidgetDisplayMode, withMaximumSize maxSize: CGSize) {
@available(iOSApplicationExtension 10.0, *) func widgetActiveDisplayModeDidChange(_ activeDisplayMode: NCWidgetDisplayMode, withMaximumSize maxSize: CGSize) { switch activeDisplayMode { case .expanded: preferredContentSize.height = 200 case .compact: preferredContentSize = maxSize } }