Как я могу инициировать обновление всех ограничений автоопределения?

Я модифицировал программно один ограничитель автоопределения. Он действует на один определенный вид, но другие представления, ограниченные другими ограничениями для этого представления, не меняют своих позиций. Существует ли метод « updateAllConstrains »?

4 Solutions collect form web for “Как я могу инициировать обновление всех ограничений автоопределения?”

Вызовите эти два метода в представлении, которое хотите обновить:

-setNeedsLayout -layoutIfNeeded 

Первый говорит системе компоновки, что это представление должно быть изложено, потому что оно имеет некоторые изменения и все должно быть пересчитано. Второе усилие, которое теперь будет выполнять система компоновки, система компоновки запускается в определенное время во время выполнения, с помощью этого метода вы говорите: «сделайте это сейчас».

Да Существует метод UIView, который называется - (void)updateConstraintsIfNeeded

https://developer.apple.com/Library/ios/documentation/UIKit/Reference/UIView_Class/UIView/UIView.html#//apple_ref/occ/instm/UIView/updateConstraintsIfNeeded

Однако я не думаю, что это ваша проблема

Проблема заключалась в том, что ограничения были настроены неправильно, и в этом случае может помочь не setNeedsLayout или updateConstraintsIfNeeded.

Лучшее, что я нашел, это:

  1. Выберите элементы, которые вы хотите «вернуть» к своим ограничениям

  2. Главное меню: Редактор / Обновить фреймы (или /) ярлык: команда + опция + =

Надеюсь, что это поможет

  • На iOS, каковы различия между полями, кросс-вставками, вставками содержимого, выравниванием прямоугольников, макетами макета ...?
  • iOS: динамическое добавление многострочной UILabel
  • ios- Autolayout - добавить ограничение для элемента навигации
  • Константа NSLayoutConsstraint, не влияющая на представление после того, как UITapGestureRecognizer был удален
  • Что означает «Использовать стандартное значение и Ограничить полях» в Auto Layout?
  • AutoLayout с размерами: различные интервалы в зависимости от размера экрана iPhone
  • Как узнать, использовался ли автоматический макет для создания раскадровки или Xib
  • Вид контейнера с динамической высотой внутри UIScrollView с автоматической компоновкой
  • Кадр не сбрасывается после предоставления ограничения uiview, iOS
  • Автоматическая предпочтительная максимальная ширина макета недоступна в версиях iOS до 8.0
  • Как я могу использовать ограничения AutoLayout, чтобы указать другой макет по сравнению с портретом без использования кода?
  • Interesting Posts
    PhoneC: Разработка iOS проста с помощью XCode, Swift3, UITableView, cocatouch, давайте создадим приложения для iPhone, iPad и Macbook.