2017-01-17 4 views
2

Как бы добиться того, чтобы представление охватывало ширину устройства на iPhone 6 в портретном режиме и на ландшафте, имеющем максимальную ширину, равную 400 пикселей, и выравнивание с правой стороны?Разный размер и выравнивание вида для разных ширины устройства

Можно ли это сделать, используя классы устройств и/или варьироваться в зависимости от свойств? Я действительно хочу, чтобы представление адаптировалось к ширине устройства: если оно превышает 400 пикселей (потому что я вращал устройство в альбомном режиме или потому, что приложение работает на iPhone Plus или iPad), оно больше не должно ширину экрана, но имеют максимальную ширину 400 пикселей и располагаются с правой стороны. Может быть, это может быть сделано только кодом?

Спасибо за любой ввод.

+0

Возможный дубликат [Как установить динамическую ширину & ​​высоту зрения в autolayout в прошивке?] (Http://stackoverflow.com/questions/ 30777528/как в настройке динамическим ширина-высота в своем-зрения-в-autolayout-в-ИОС) – SwiftDeveloper

ответ

1

То, что я действительно хочу, является то, что вид адаптируется к ширине устройства: если она шире, чем 400px (потому что я вращаю устройство в ландшафтном режиме или потому, что приложение работает на iPhone Plus или iPad) больше не должен превышать ширину дисплея, а должен иметь максимальную ширину 0 ×и сидеть с правой стороны.

Этого можно достичь, установив следующие ограничения для управления шириной и расположением вашего вида.

  1. Штифт вид на задней кромке ее надтаблицы с постоянной 0 и приоритета 1000.
  2. Подключите взгляд к переднему краю его супервизора с константой 0 и приоритетом 750.
  3. Установите ограничение ширины для представления и сделайте его Меньше или равно до 400 с приоритетом 1000.

При просмотре на iPhone 6 в портрет все три ограничения легко удовлетворяются.

При просмотре на iPhone 6 в пейзаж, ограничение 2 (которое имеет более низкий приоритет) сломано, чтобы удовлетворить другие 2 ограничения. Auto Layout сделает все возможное, чтобы удовлетворить ограничение 2 и сделает просмотр максимально широким, не нарушая ограничение ширины, которое составляет 400 единиц.

Вам понадобятся другие ограничения для вашего вида, чтобы установить его высоту и вертикальное положение.


constraints in Storyboard


gif showing running in the simulator

Смежные вопросы