Функции выравнивания Align Horizontal Centers, Opt H и Align Vertical Centers, Opt V позволяют двигать слой на центр его фрейма. Если тот изменится, слой останется на тех же координатах.

Если мы заранее знаем, что слой всегда должен быть строго по вертикальному или горизонтальному центру, вне зависимости от размера фрейма, можно использовать ограничители и прикрепить слой к центру.

<aside> 💡 Задача: модальное окно должно быть по центру.

</aside>

  1. Создаём фрейм размера iPhone SE, F.
  2. Рисуем прямоугольник размером 200 х 120, R.
  3. Ставим его по центру фрейма, Opt + H, V. Нажимаем V после H, не отпуская Opt.
  4. Когда зажат Opt, мы можем смотреть расстояния от прямоугольника до краёв фрейма.
  5. Настраиваем прицел в блоке Constraints ****так, чтобы в нём был голубой плюс, кликнув на каждую из перекладин. Либо выберем из меню значения Center, Center.
  6. Обратим внимание, что внутри прямоугольника появился пунктирный крест, ещё одно подтверждение того, что мы в режиме Center, Center.

  1. Сменим размер фрейма с iPhone SE на iPhone 8. Прямоугольник подстроит своё положение:

Закреплённый слой можно сдвигать относительно центра. При изменении фрейма тот сохранит своё расстояние сдвига в пикселях. Если слой сдвинули наверх на 10 пикселей и изменили фрейм, в новом фрейме это расстояние не исказится.