Я программно добавляю эти ограничения в ячейку, чтобы сделать отступ для вложенных вкладок.В большинстве случаев это работает, однако, как показано на скриншоте, это не всегда работает.Код ниже показывает ограничения.
let views: [String:Any] = ["parent": self, "view": self.borderView, "subview": self.backView, "button1": self.actionButton, "label": self.name, "button2": self.nextButton]
let margin1 = NSLayoutConstraint.constraints(withVisualFormat: "|-\(margin*level+8)-[subview]-8-|",
options: .alignAllCenterY,
metrics: nil,
views: views)
let margin2 = NSLayoutConstraint.constraints(withVisualFormat: "|-\(margin*level+8)-[view]-8-|",
options: .alignAllCenterY,
metrics: nil,
views: views)
let margin3 = NSLayoutConstraint.constraints(withVisualFormat: "|-8-[button1]-[label]-[button2]-8-|",
options: .alignAllCenterY,
metrics: nil,
views: views)
self.addConstraints(margin1)
self.addConstraints(margin2)
self.addConstraints(margin3)
self.setNeedsUpdateConstraints()
self.updateConstraintsIfNeeded()
self.updateConstraints()
Я использую автоматическое расположение, и эти ячейки находятся в своем собственном файле xib.У кого-нибудь есть подсказка?