Ответ 1
Это просто расширение того, как быстро использовать "Vary Traits" в вашем проекте для добавления разных макетов для iPad и iPhone.
Прочтите это, чтобы узнать больше о классах размера.
https://developer.apple.com/reference/uikit/uitraitcollection
Если вы пропустите приведенный ниже пример, прочитайте в конце краткую сводку.
- ЦЕЛЬ:
Вам нужна кнопка с разной шириной в iPhone и iPad. Первый имеет ширину 80 и последний имеет ширину 300.
- МЕТОД 1:
Изменять для признаков с несколькими ограничениями, как установлено.
-
ШАГИ:
- Сначала добавьте общие ограничения, например, по центру по горизонтали и по вертикали.
- Выберите VaryForTraits и экраны iPhone в соответствии с рекомендациями класса размера, класс размера C * R подходит для модели, и мы проверяем отметки ширины и высоты в PopUp. Отключите всплывающее окно, щелкнув в любом месте экрана.
- Добавьте константу width и проверьте, добавлено ли ограничение для класса размера C * R. После добавления ограничений выберите кнопку Done Varying.
- Для экранов iPad снова выберите любое устройство iPad и выберите VaryForTraits, и на этот раз при нажатии на высоту-ширину он должен показывать изменение R * R.
- Снова добавьте ограничение ширины, последнее добавленное ограничение ширины iPhone должно быть не засвечено, как на скриншоте. Добавленная стоимость будет для R-R размера класса на этот раз.
- Вернитесь к макету iPhone, и он займет 80 по ширине, а iPad займет 300.
ЗАКЛЮЧЕНИЕ:
Обратите внимание, что добавлено всего два ограничения, и в обоих ограничениях значения отличаются в зависимости от выбранного размера.
- МЕТОД 2:
Вариант с чертами с одиночным ограничением, установленным несколькими размерами
- ШАГИ:
- Добавьте ограничение обычной ширины. Затем выберите это ограничение и выберите кнопку +, кроме значения Constant.
- Добавить вариацию признаков, а для iPhone мы выбираем C * R и устанавливаем постоянное значение 100.
- Снова для iPad, который следует за вариацией признаков как R * R, мы добавляем еще одну вариацию, нажимая снова кнопку + и устанавливаем значение 300.
- Выберите iPad, и ширина будет автоматически принята за 300 и вернется в iPhone, а значение 100 будет стоить 100.
ЗАКЛЮЧЕНИЕ:
Кажется, это лучший вариант, а не добавление двух ограничений, когда требуется только одно ограничение, и значение константы отличается.
КОГДА ИСПОЛЬЗОВАТЬ, ЧТО ИСПОЛЬЗОВАТЬ:
Оба подхода в основном делают то же самое, устанавливая значения в классах размера.
Но # Метод1 используется, если вы хотите добавить ограничение специально для устройства или сказать size-class. Например, в iPhone кнопка должна быть от 50 очков, а в iPad она должна быть центрирована по горизонтали и по вертикали. В таких ситуациях вам необходимо использовать VaryForTraits, поскольку он открывает двери для добавления ограничений для определенного класса размера.
# Метод2 используется, когда вам нужны разные константные значения для одного и того же типа ограничений.
P.S: ВСЕ, КОТОРЫЕ НЕ ДОЛЖНЫ ПОЛУЧИТЬ РАБОТУ ПРИМЕРОВ
Пожалуйста, убедитесь, что вы добавляете только необходимые ограничения, как установлено. Флажок напротив установленного должен появляться только для ограничения, необходимого для класса размера. Это ключ!
Просто добавьте верхнее ограничение и создайте uiButton в представлении. Выберите верхнее ограничение и снимите отметку с базовой опцией Installed с помощью знака Plus. Теперь, щелкнув знак плюса, добавьте вариацию в CR и проверьте эту опцию. Теперь измените устройство с iPhone на iPad с различными ориентационными комбинациями. Это ограничение будет применяться только для класса размера CR, который является iPhone в портретной ориентации. Если установлен флажок напротив базового Installed (один с символом Plus), это означает, что ограничение должно применяться ко всем классам размеров.
РЕЗЮМЕ:
Изменение вариации - это изменение представления вашего пользовательского интерфейса, основанного на конфигурации устройства. Значения вариаций пользовательского интерфейса не ограничиваются ограничениями, но могут применяться к гораздо большему. Такие, как изменение цвета фона и других элементов, когда устройство настроено на темный стиль. Вариант может применяться к элементу пользовательского интерфейса, таким как удаление ограничения или к свойству класса представления или ограничения, например шрифт для метки. Вы можете варьироваться:
-
Размер или положение представления
-
Установка представления
-
Установка ограничения
-
Константа константы
-
Шрифт
-
Цвет шрифта, оттенка или фона
-
Поля макета
-
Файл изображения
Конкретный набор свойств, которые вы можете изменить, зависит от класса элемента. В этом примере мы продемонстрировали использование - Установка ограничения и - Константу константы. Другие, довольно просты и могут быть легко выведены.