DevPrep

Все темы › Auto Layout

Как работают приоритеты констрейнтов?

Middle PRO

Суть

Приоритет — UILayoutPriority от 1 до 1000. required (1000) — констрейнт обязан выполняться; всё ниже — optional: движок старается выполнить его, а если не может, минимизирует отклонение, начиная с самых низких приоритетов. Именованные значения: .required (1000), .defaultHigh (750), .defaultLow (250), .fittingSizeLevel (50).

Приоритеты нужны, чтобы описывать предпочтения, а не жёсткие правила: «ширина 300, если помещается, но не шире родителя», «кнопка слева, но если текст не влезает — переносится». Без них любое несовпадение превращается в unsatisfiable-конфликт.

Продолжение ответа с кодом и уточняющими вопросами интервьюера — в приложении DevPrep.

Полный ответ — в DevPrep

Потренируйтесь перед собеседованием

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

Скачать DevPrep в App Store