На ваш вопрос, как есть, невозможно ответить ...
Что делает ваше приложение? Если это слайд-шоу с фотографиями, ограничьте imageView до полного вида и установите его режим содержимого в соответствии с масштабированием. Вуаля! Он «хорошо выглядит» на всех устройствах!
Если ваше приложение более сложное, вам, вероятно, потребуется использовать all типы ограничений: элементы относительно друг друга; равны друг другу; относительный / равный с постоянными корректировками; относительный / равный с настройками множителя; и др c. И вам могут потребоваться разные макеты (а не просто разные размеры) в зависимости от устройства + ориентации, и в этом случае вы также захотите воспользоваться вариациями размера класса.
Кроме того, вы можете получить приложение для «взгляд на каждое устройство» включает в себя много, много , НАМНОГО больше, чем применение ограничений.
- Должно ли приложение использовать панель вкладок?
- Панель навигации?
- Их комбинация?
- Нет?
- Следует ли использовать текстовые кнопки или кнопки изображений?
- Должен ли он настраиваться на доступность и динамичность c шрифтов?
- Может ли он иметь другую функциональность при работе на маленьком экране по сравнению с большим экраном?
В целом, вашим первым шагом должно быть рисование от руки каждого экрана и элемента пользовательского интерфейса, который вы ожидаете, включая «поток» действия, с изменениями размеров и ориентаций, поэтому вы разрабатываете лучший пользовательский интерфейс с самого начала. В этот момент вы начинаете фактическое построение пользовательского интерфейса.
Имейте в виду, что есть люди, которые не могут создать приложение "Hellow World", но делают очень хорошо жить как "Дизайнеры приложений".
Сказав все это, хотя ... один подход, который вам почти конечно не следует принимать, это:
view.widthAnchor.constraint(equalToConstant: 20.scale())
РЕДАКТИРОВАТЬ
Вот краткий пример - на основе этой статьи: https://www.raywenderlich.com/1343912-adaptive-layout-tutorial-in-ios-12-getting-started
Простое приложение погоды - ограничения устанавливаются так, чтобы он выглядел аналогично для всех моделей iPhone и iPad:
Но что происходит когда вы поворачиваете телефон?
Маленькое крошечное облако выглядит не очень хорошо. Добавьте trait-Вариации / size-классы, и мы можем получить:
И, чтобы попытаться ответить на ваш отредактированный вопрос: «Неправильно ли проверять, является ли устройство iPad ...» ?
Да. Рекомендуется проектировать для trait-Вариации / Размеры-Классы, чтобы ваше приложение выглядело так, как вы хотите во всех конфигурациях (надеюсь, что оно пригодится и для следующего устройства, которое выйдет).