【问题标题】:How do you set UILayoutPriority?你如何设置 UILayoutPriority?
【发布时间】:2018-03-15 12:53:24
【问题描述】:

我尝试创建对约束的引用,然后设置布局优先级,但这会导致应用崩溃

let topTrasactionConstraint = transactionsTableviewContainer.topAnchor.constraint(equalTo: buttonsStackContainerView.bottomAnchor, constant: 6)


    NSLayoutConstraint.activate([
            topTrasactionConstraint,
            transactionsTableviewContainer.centerXAnchor.constraint(equalTo: contentView.centerXAnchor),
            transactionsTableviewContainer.widthAnchor.constraint(equalTo: contentView.safeAreaLayoutGuide.widthAnchor, constant: -20),
            transactionsTableviewContainer.heightAnchor.constraint(equalToConstant: 500)
            ])


topTrasactionConstraint.priority = UILayoutPriority.init(999)

【问题讨论】:

  • 您可以省略.init,但这是正确的,我不知道这会如何导致崩溃。也许您应该发布有关您遇到的崩溃的更多详细信息。
  • 你能把崩溃日志贴出来我用它不会崩溃

标签: ios swift autolayout nslayoutconstraint


【解决方案1】:

我发现我在打电话

topTrasactionConstraint.priority = UILayoutPriority.init(999)

之前NSLayoutConstraint.activate
这导致我的应用程序崩溃

【讨论】:

    【解决方案2】:

    topTrasactionConstraint.priority = 999怎么样?

    https://useyourloaf.com/blog/easier-swift-layout-priorities/

    【讨论】:

    • 这行不通。您不能将Int 分配给键入UILayoutPriority。您链接的文章操纵了优先级的rawValue,而不是直接操纵优先级。
    猜你喜欢
    • 1970-01-01
    • 2014-03-26
    • 2021-06-03
    • 2010-09-21
    • 1970-01-01
    • 2019-09-30
    • 2015-09-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多