swift 3错误[_SwiftValue nsli_superitem]

Ric*_*tes 8 ios swift swift3 ios10 xcode8

在swift 3转换后,我遇到了这个错误.

'NSInvalidArgumentException',原因:' - [_ SwiftValue nsli_superitem]:无法识别的选择器发送到实例0x600000a54820'

有问题的代码就是这个,它可以与swift 2一起使用:

let views = ["newView": userLabel]
let widthConstraints = NSLayoutConstraint.constraints(withVisualFormat: "H:[newView(0)]", options: NSLayoutFormatOptions(rawValue: 0), metrics: nil, views: views)
userMainLabel.addConstraints(widthConstraints)
Run Code Online (Sandbox Code Playgroud)

Ric*_*tes 19

这是swift 3的问题,其中字典被视为[String:UIView?]

修复方法是将类型指定为不可选

let views: [String: UIView] = ["newView": userLabel]
Run Code Online (Sandbox Code Playgroud)