В вашем случае это будет сложно, потому что у вас нет явного ограничения ширины для uiview1
, которое вы можете изменить в коде. Самое близкое, что у вас есть, это проверка ограничений в
constraintArray += NSLayoutConstraint.constraints(withVisualFormat: "H:|-10-[uiview1]-10-|", options: [], metrics: nil, views: viewsDict)
и настройте каждое ограничение (должно быть два ограничения), возвращаемое из этой строки, и измените их constant
.
let uiview1Constraints = NSLayoutConstraint.constraints(withVisualFormat: "H:|-10-[uiview1]-10-|", options: [], metrics: nil, views: viewsDict)
...
// Make uiview1 thinner
uiview1Constraints[0].constant = 20
uiview1Constraints[1].constant = 20
UIView.animate(withDuration: 3) {
self.view.layoutIfNeeded()
}
Я бы рекомендовал использовать NSLayoutAnchor
для создания ограничений. Это проще и проще для чтения, а также менее подвержен ошибкам. Вы по-прежнему можете манипулировать constant
непосредственно после их создания.