создать IBOutlet
в файле viewController.h
:
@property (weak, nonatomic) IBOutlet NSLayoutConstraint *nameButtonVerticalConstraint;
теперь соединяют его с заинтересованными autolayout ограничения:
Теперь вы можете просто изменить ограничение например:
self.nameButtonVerticalConstraint.constant=25;
И если вы хотите более плавные переходы, вы можете поместить его внутри блока анимации:
[UIView animateWithDuration:1.2 delay:1 options:UIViewAnimationOptionCurveEaseInOut animations:^{
self.nameButtonVerticalConstraint.constant=50;
[self.view layoutIfNeeded];
} completion:nil];
EDIT: вот выдержка из this статьи
Если другие ограничения будут затронуты в связи с обновлением к вышеуказанному ограничению также следует называть следующее:
[viewForUpdate setNeedsUpdateConstraints];
Теперь, оживите просмотр по вызову layoutIfNeeded
внутри блока анимации.
Показать код, что конкретно не работает? – Wain
переопределение функ updateViewConstraints() { centerYConstraint.constant = 60 super.updateViewConstraints() } – Nik