【问题标题】:Swift: Invalid parameter not satisfying: constraintSwift:无效参数不满足:约束
【发布时间】:2014-08-26 13:22:17
【问题描述】:

我收到了错误:

无效参数不满足:[constraint isKindOfClass:[NSLayoutConstraint class]]

对于我用 Swift 编写的自动布局约束代码:

    let d:NSDictionary = ["scrollView": scrollView]
    let hc:NSArray = [NSLayoutConstraint.constraintsWithVisualFormat("H:|[scrollView]|", options: NSLayoutFormatOptions.allZeros, metrics: nil, views: d)]
    let vc:NSArray = [NSLayoutConstraint.constraintsWithVisualFormat("V:|[scrollView]|", options: NSLayoutFormatOptions.allZeros, metrics: nil, views: d)]
    view.addConstraints(hc)
    view.addConstraints(vc)

有谁知道这个错误试图告诉我什么?据我所知,参数的类型为NSArray,其中包含NSLayoutConstraint 对象。我怀疑我必须将数组明确定义为NSArray,但这并没有解决它。

【问题讨论】:

    标签: ios objective-c xcode swift nslayoutconstraint


    【解决方案1】:

    NSLayoutConstraint.constraintsWithVisualFormat 已经返回一个NSArray,所以你不需要将它包装在另一个数组中。所以试试:

    let d:NSDictionary = ["scrollView": scrollView]
    let hc:NSArray = NSLayoutConstraint.constraintsWithVisualFormat("H:|[scrollView]|", options: NSLayoutFormatOptions.allZeros, metrics: nil, views: d)
    let vc:NSArray = NSLayoutConstraint.constraintsWithVisualFormat("V:|[scrollView]|", options: NSLayoutFormatOptions.allZeros, metrics: nil, views: d)
    view.addConstraints(hc)
    view.addConstraints(vc)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-11-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-02-14
      • 2012-12-28
      • 1970-01-01
      • 2021-07-20
      相关资源
      最近更新 更多