自动布局视觉格式语言
Auto Layout Visual Format Language
我在以下地方使用这种视觉格式布局 "V:[v0]-16-|"
:
self.view.addConstraintsWithFormat("V:[v0]-16-|", views: imageView)
辅助方法如下:
func addConstraintsWithFormat(_ format: String, views: UIView...) {
var viewsDictionary = [String: UIView]()
for (index, view) in views.enumerated() {
let key = "v\(index)"
view.translatesAutoresizingMaskIntoConstraints = false
viewsDictionary[key] = view
}
addConstraints(NSLayoutConstraint.constraints(withVisualFormat: format, options: NSLayoutConstraint.FormatOptions(), metrics: nil, views: viewsDictionary))
}
但实际上我想要的是"V:[v0]+16+|",我希望正确的约束超出UIScreen
。我怎样才能做到这一点?
您可以使用负边距将视图放置在父级边缘之外。只需将常量放在括号中,如下所示:
self.view.addConstraintsWithFormat("V:[v0]-(-16)-|", views: imageView)
我在以下地方使用这种视觉格式布局 "V:[v0]-16-|"
:
self.view.addConstraintsWithFormat("V:[v0]-16-|", views: imageView)
辅助方法如下:
func addConstraintsWithFormat(_ format: String, views: UIView...) {
var viewsDictionary = [String: UIView]()
for (index, view) in views.enumerated() {
let key = "v\(index)"
view.translatesAutoresizingMaskIntoConstraints = false
viewsDictionary[key] = view
}
addConstraints(NSLayoutConstraint.constraints(withVisualFormat: format, options: NSLayoutConstraint.FormatOptions(), metrics: nil, views: viewsDictionary))
}
但实际上我想要的是"V:[v0]+16+|",我希望正确的约束超出UIScreen
。我怎样才能做到这一点?
您可以使用负边距将视图放置在父级边缘之外。只需将常量放在括号中,如下所示:
self.view.addConstraintsWithFormat("V:[v0]-(-16)-|", views: imageView)