ios - 如何调整今天扩展的高度?

标签 ios swift xcode

如何在 iOS 11 中调整小部件的高度?

我无法调整 today Extension 的高度。

override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()
    self.extensionContext?.widgetLargestAvailableDisplayMode = NCWidgetDisplayMode.expanded


}

func widgetActiveDisplayModeDidChange(_ activeDisplayMode: NCWidgetDisplayMode, withMaximumSize maxSize: CGSize) {
    if activeDisplayMode == NCWidgetDisplayMode.compact {
        //compact
        self.preferredContentSize = maxSize
    } else {
        //extended
        self.preferredContentSize = CGSize(width: 0, height: 200)
    }
}

最佳答案

有点猜测,但试试这个(使用 maxSize.width 而不是 0 宽度):

func widgetActiveDisplayModeDidChange(_ activeDisplayMode: NCWidgetDisplayMode, withMaximumSize maxSize: CGSize) {

    if activeDisplayMode == NCWidgetDisplayMode.compact {
        //compact
        self.preferredContentSize = maxSize
    } else {
        //extended
        self.preferredContentSize = CGSize(width: maxSize.width, height: 200)
    }
}

此外,不要忘记添加此行以启用 .expanded 模式(例如,添加到 viewDidLoad):

self.extensionContext?.widgetLargestAvailableDisplayMode = .expanded

关于ios - 如何调整今天扩展的高度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48462998/

相关文章:

iOS 不显示标签栏和 TableView

iphone Mail App Popup 样式 alertview

objective-c - 没有标题的setBack按钮背景图像IOS5

ios - 使用swift语言更改按钮背景颜色

ios - 复选框在 UITableView 编辑模式下覆盖内容

ios - Game Center 排行榜沙箱中只显示一个结果 - 正常吗?

即使配置了正确的后台模式,iOS 后台获取也无法正常工作

swift - 在 Swift 中,如何声明键为函数的字典? (不符合协议(protocol) 'Hashable' )

ios - 在设置为 Autoresize 的 tableView 中插入会导致滚动问题

ios - 可移动的 UIImageView 蒙版