当前位置:  开发笔记 > IOS > 正文

今天iOS 10中的小部件没有扩展

如何解决《今天iOS10中的小部件没有扩展》经验,为你挑选了1个好方法。

我正试图解决我今天的小部件的问题.按"显示更多"按钮后,它不会在iOS10上扩展.它的大小始终保持不变.

这是代码 TodayViewController.swift

import UIKit
import NotificationCenter

class TodayViewController: UIViewController {
    override func viewDidLoad() {
        super.viewDidLoad()

        extensionContext?.widgetLargestAvailableDisplayMode = .expanded
    }
}

extension TodayViewController: NCWidgetProviding {

    func widgetActiveDisplayModeDidChange(activeDisplayMode: NCWidgetDisplayMode, withMaximumSize maxSize: CGSize) {
        if activeDisplayMode == .expanded {
            preferredContentSize = CGSize(width: 0, height: 280)
        } else {
            preferredContentSize = maxSize
        }
    }
}

有什么提示吗?



1> Ahmad F..:

假设您使用Swift 3进行编码,请注意widgetActiveDisplayModeDidChange方法签名是:

可选的func widgetActiveDisplayModeDidChange(_ activeDisplayMode:NCWidgetDisplayMode,withMaximumSize maxSize:CGSize)

所以,它应该是:

func widgetActiveDisplayModeDidChange(_ activeDisplayMode: NCWidgetDisplayMode, withMaximumSize maxSize: CGSize) {
    if activeDisplayMode == .expanded {
        preferredContentSize = CGSize(width: 0, height: 280)
    } else {
        preferredContentSize = maxSize
    }
}

要仔细检查是否存在问题,可以在当前方法中添加断点,并检查它是否可访问.

推荐阅读
mobiledu2402851203
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有