线程1:使用VisualFormat

时间:2017-07-29 14:24:10

标签: ios swift nslayoutconstraint

我正在设计我的视频应用程序,我不使用main.storyboard进行设计,只使用xcode 8 swift 3中viewcontroller.swift中的代码 我的问题是在我向viewcontroller.swift添加以下行之后:

addConstraints(NSLayoutConstraint.constraints(withVisualFormat: "H: |-16-[v0]-16-|", options: NSLayoutFormatOptions(), metrics: nil, views: ["v0": thumbnailImageView]))
addConstraints(NSLayoutConstraint.constraints(withVisualFormat: "V: |-16-[v0]-16-|", options: NSLayoutFormatOptions(), metrics: nil, views: ["v0": thumbnailImageView]))

我没有任何错误,但在我运行项目后崩溃并在appdelegate.swift上给我这个错误: appdelegate.swift error

请帮我解决这个问题

这是我的project source code download link

1 个答案:

答案 0 :(得分:1)

首先确保您正在为当前视图添加thumbnailImageView作为子视图,然后我认为问题是“V:|”之间存在空格将其更改为V:| ,对H做同样的事:| 。你的约束应该是这样的

addConstraints(NSLayoutConstraint.constraints(withVisualFormat: "H:|-16-[v0]-16-|", options: NSLayoutFormatOptions(), metrics: nil, views: ["v0": thumbnailImageView]))
addConstraints(NSLayoutConstraint.constraints(withVisualFormat: "V:|-16-[v0]-16-|", options: NSLayoutFormatOptions(), metrics: nil, views: ["v0": thumbnailImageView]))