VFL(Auto Layout Visual Format Language)
override func viewDidLoad() {
super.viewDidLoad()
let label1 = UILabel()
label1.translatesAutoresizingMaskIntoConstraintsn = false
label1.backgroundColor = UIColor.green
label1.text = "These"
label1.sizeToFit()
view.addSubview(label1)
}
let viewDictionary = ["label1": label1, "label2": label2, "label3": label3, "label4": label4, "label5": label5]
for label in viewDictionary.keys {
view.addConstraints( NSLayoutConstraint.constraints(withVisualFormat: "H:|[\(label)]|", options: [], metrics: nil, views: viewsDictionary))
}
=> 현재 수직(vertical) 레이아웃은 없기 때문에 모든 레이블이 view에서 수평적으로 edge에 맞게 배치되지만 모두 겹친다.
view.addConstraints( NSLayoutConstraint.constraints(withVisualFormat: "V:|[label1]-[label2]-[label3]-[label4]-[label5]", options: [], metrics: nil, views: viewsDictionary))