2017-01-10 5 views
0

В XCode я хотел бы иметь разный макет в соответствии с используемым устройством. Например, если это iPad, мне бы хотелось, чтобы изображение было выровнено влево с некоторым текстом справа, а на iPhone 7 я хотел бы, чтобы изображение было над текстом. Немного похоже на отзывчивый веб-сайт, где мы можем управлять макетами в соответствии с шириной устройства.Возможно ли иметь один макет на устройство вместо автоматического макета?

Возможно ли использование XCode с помощью раскадровки? Или я должен продолжать работать, используя функцию автоматического макета?

Спасибо!

+3

вы действительно должны использовать autolayout, один день, когда яблоко решает добавить новый размер экрана для своих телефонов, ваши приложения макет сломается без обновления, который может занять некоторое время, чтобы вытолкнуть в зависимости, как много пользовательского интерфейса вашего приложения – Fonix

ответ

1

С помощью autolayout, мы можем достичь другой макет на разные размеры экрана. Вы можете изменить constants values для классов разности в Storyboard.

Шаг: -

  • Выберите константу мы хотим изменить значение в других размерных классов.
  • В указателе атрибута после выбора константы вы можете увидеть значение константы. Рядом с вами вы можете увидеть знак PLUS (+), слева от «константы».
  • Нажмите на него и выберите нужный класс.
  • Дайте ему новое значение.

enter image description here

0

Я нашел это answer, чтобы ответить на ваш вопрос.

Однако, если, как вы сказали, что вы хотите только различные дисплеи для IPADS и iPhone'ов, вы можете дифференцировать их таким простым способом:

if UIDevice.current.userInterfaceIdiom == .pad { 

    // Show iPad UI 

} else { 

    // Show iPhone UI 

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