objective-c - 如何更改 iOS 扩展的高度?

标签 objective-c swift ios10 ios-extensions

如何在紧凑模式下更改 iOS 10 扩展的高度?或者更广泛地说,如何在不使用 widgetActiveDisplayModeDidChange 的情况下更改扩展的高度?

最佳答案

我正在这样使用,也许这会对您的问题有所帮助:

override func viewDidLoad() {
        super.viewDidLoad()

        self.preferredContentSize = CGSize(width:self.view.frame.size.width, height:210)

        if #available(iOSApplicationExtension 10.0, *) {
            self.extensionContext?.widgetLargestAvailableDisplayMode = .expanded
        }
    }

我喜欢 210 的高度,当然你可以使用任何高度......

更新:

如果你想使用固定大小,你可以使用 NCWidgetDisplayMode 的第二个选项“compact”:

@available(iOS 10.0, *)
public enum NCWidgetDisplayMode : Int {


    case compact // Fixed height

    case expanded // Variable height
}

您可以像下面这样更新您的代码:

if #available(iOSApplicationExtension 10.0, *) {
    self.extensionContext?.widgetLargestAvailableDisplayMode = .compact
}

关于objective-c - 如何更改 iOS 扩展的高度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40262689/

相关文章:

ios - UILocalnotification用于报警应用超过30秒

ios - 如何使用 messageID 获取邮件的文件夹详细信息?

ios - UINavigationBar 约束问题中的奇怪 UITextField 仅在 iOS 10 或更高版本上

migration - swift : Unable to infer complex closure type with NSFetchedResultsController

ios - Objective-C - 设置 ImageView 宽度并保持纵横比

ios - 如何在 UITableViewController 的静态单元格中添加 UIView?

arrays - 将一个整数从一个数组转移到另一个数组会导致无效的数组大小

ios - 如何快速向uiimage添加彩色边框

ios - 从 Swift Decodables 访问枚举的合适方法是什么?

iOS - 获取当前 Wifi 凭据(SSID 和密码)