Предупреждение обычно сообщает о несовместимых constraints. Найдите конфликтующие правила, а не скрывайте лог; autoresizing mask тоже может создавать ограничения.
Что означает предупреждение Auto Layout, как его локализовать и исправить, и что делает translatesAutoresizingMaskIntoConstraints?
Предупреждение обычно сообщает о несовместимых constraints. Найдите конфликтующие правила, а не скрывайте лог; autoresizing mask тоже может создавать ограничения.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Предупреждение обычно сообщает о несовместимых constraints. Найдите конфликтующие правила, а не скрывайте лог; autoresizing mask тоже может создавать ограничения.
Поставьте symbolic breakpoint UIViewAlertForUnsatisfiableConstraints, изучите список конфликтов и иерархию в View Debugger. Добавьте constraints понятные identifiers; проверьте дубли, константы, priorities, разные размеры и локализации.
translatesAutoresizingMaskIntoConstraints преобразует autoresizing mask в ограничения. Для view с программно заданными собственными constraints обычно устанавливают false, иначе полученные правила могут конфликтовать. Это не команда «выключить Auto Layout». Отличайте несовместимость от неоднозначности: во втором случае решений несколько и предупреждение о broken constraint может вообще не появляться.
Источник: developer.apple.com.