Подтвердить что ты не робот

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

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

4b9b3361

Ответ 1

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

Ответ 2

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

-setNeedsLayout
-layoutIfNeeded

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

Ответ 4

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

  • Выберите элементы, которые вы хотите "вернуть" к вашим ограничениям

  • Верхнее меню: редактор/обновление фреймов (или/) ярлык: команда + опция + =

Мы надеемся, что это поможет