我今天在我的应用中使用扩展模式扩展了代码:
self.extensionContext.widgetLargestAvailableDisplayMode = NCWidgetDisplayModeExpanded;
和
- (void)widgetActiveDisplayModeDidChange:(NCWidgetDisplayMode)activeDisplayMode withMaximumSize:(CGSize)maxSize {
if (activeDisplayMode == NCWidgetDisplayModeExpanded) {
self.preferredContentSize = CGSizeMake(0.0, 215.0);
}
else if (activeDisplayMode == NCWidgetDisplayModeCompact) {
self.preferredContentSize = maxSize;
}}
它在新应用中运行正常,但它在我之前版本的xcode中制作的现有应用中无效。小部件总是处于紧凑模式,没有"显示更多/更少"按钮。 知道为什么吗? 感谢
答案 0 :(得分:-1)
widgetLargestAvailableDisplayMode 链接:https://developer.apple.com/reference/foundation/nsextensioncontext/1649133-widgetlargestavailabledisplaymod
(void)widgetActiveDisplayModeDidChange:(NCWidgetDisplayMode)activeDisplayMode withMaximumSize:(CGSize)maxSize这是从iOS 10开始引入的。 链接:https://developer.apple.com/reference/notificationcenter/ncwidgetproviding/1649132-widgetactivedisplaymodedidchange?language=objc
这就是你在iOS 8/9中没有获得相同按钮的原因。
通过在小部件底部添加showMore按钮,可以在iOS 8/9中复制相同的行为,您也可以在其他小部件中看到。