NotificationCenter高度在iOS 11中自动更改

时间:2017-10-03 07:39:19

标签: ios notifications widget ios11 xcode9

我正面临问题,就像你点击小工具中显示更多按钮一样,如果你打开应用程序并保留背景,然后去查看小部件,那么高度将会改变并覆盖窗口。

请查看附件图片:

enter image description here

我该如何解决这个问题?

更新:高度问题已修复,但我面临宽度问题。

enter image description here

2 个答案:

答案 0 :(得分:0)

设置viewController的preferredContentSize

self.preferredContentSize = CGSizeMake(self.preferredContentSize.width, yourViewSizeHeight);

答案 1 :(得分:0)

我发布解决方案以解决问题:

 func widgetActiveDisplayModeDidChange(_ activeDisplayMode: NCWidgetDisplayMode, withMaximumSize maxSize: CGSize) {
        guard activeDisplayMode == .expanded else {
            preferredContentSize = maxSize
            return
        }
        guard didLayoutOnce else {

            let oldPreferredContentSize = preferredContentSize
            ***preferredContentSize = maxSize** (To fix issue I removed this line of code)*
            preferredContentSize = oldPreferredContentSize
            return
        }

        let collectionViewSize = phrasesCollectionView.contentSize
        preferredContentSize = maxSize
        if collectionViewSize.height < maxSize.height {
            preferredContentSize = collectionViewSize
        }
    }