... -, ? , . UIView, , . ( , ) " Visual Format" /NSLayoutConstraint .
MyCustomView ( -) UIView. UIViewController , .
1) MyCustomView, ( - ):
let alertView = MyCustomView(frame: CGRect(0,0,200,150))
self.view.addSubview(alertView)
alertView.constrainToSuperView()
2) constrainToSuperView :
private func constrainToSuperView() {
self.translatesAutoresizingMaskIntoConstraints = false
var constraints = [NSLayoutConstraint]()
let vertical = NSLayoutConstraint.constraints(withVisualFormat: "V:|[self]|", options: [], metrics: nil, views: ["self": self])
constraints.append(contentsOf: vertical)
let horizontal = NSLayoutConstraint.constraints(withVisualFormat: "H:|[self]|", options: [], metrics: nil, views: ["self": self])
constraints.append(contentsOf: horizontal)
self.superview.addConstraints(constraints)
}
, , . .
1: MyCustomView. . . , .xib . , - .
2: , . , , .
, . .