Обновить свойство константы ограничения программно в Swift?
Я хочу анимировать объект, поэтому объявляю ограничение и добавляю его в представление. Затем я обновляю свойство constant
ограничения внутри анимации UIView
. Почему этот код не перемещает объект?
UIView.animateWithDuration(1, animations: {
myConstraint.constant = 0
self.view.updateConstraints(myConstraint)
})
Ответы
Ответ 1
Чтобы объявить анимацию, вы не можете переопределить ограничение и вызвать updateConstraints
. Вы должны изменить constant
вашего ограничения и следовать следующему ниже формату:
self.view.layoutIfNeeded()
UIView.animateWithDuration(1, animations: {
self.sampleConstraint.constant = 20
self.view.layoutIfNeeded()
})