вы должны использовать его вместо кода:
для ограничения набора вы должны изменить свой код следующим образом:
func setConstraints(to view: UIView , superView: UIView) {
self.translatesAutoresizingMaskIntoConstraints = false
let leading = NSLayoutConstraint(item: self, attribute: .leading, relatedBy: .equal, toItem: view, attribute: .leading, multiplier: 1, constant: 0.8)
let trailing = NSLayoutConstraint(item: self, attribute: .trailing, relatedBy: .equal, toItem: view, attribute: .trailing, multiplier: 1, constant: -0.8)
let width = NSLayoutConstraint(item: self, attribute: .width, relatedBy: .equal, toItem: nil, attribute: .notAnAttribute, multiplier: 1, constant: 320)
let height = NSLayoutConstraint(item: self, attribute: .height, relatedBy: .equal, toItem: nil, attribute: .notAnAttribute, multiplier: 1, constant: 120)
superView.addConstraints([leading, trailing])
self.addConstraints([width, height])
}
и первая часть: лучше определить объект MyTableView для нулевого кадра (это просто поможет вам не ошибиться) и отправить контроллер представления в ограничение, потому что ему нужно добавить ограничения в место иерархии.
так что сделайте следующее:
myTableView = MyTableView(frame: .zero, style: .plain)
myTableView!.isHidden = false
myTableView!.backgroundColor = UIColor.green
self.view.addSubview(myTableView!)
myTableView.setConstraints(to: authorTextField , superView: self)