2016-01-04 1 views
0

Я хочу описать проблему (и соответствующее ей решение), которое у меня было с классами размера.Дизайн с использованием классов размера не работает должным образом

Для среды UIViewController и iPhone, я хочу иметь разный макет для пейзажа и портрета. У меня есть соответствующие конструкции в Interface Builder с использованием классов классов. Однако при запуске приложения на симуляторе я всегда получаю макет портрета независимо от ориентации устройства.

Я попробовал 2 разных подходы:

  1. Создание портретного макета для любого-любого размера класса и альбомного для затухающего-hCompact.
  2. Создание макета портрета для wCompact-hRegular, пейзажного для wAny-hCompact и другого для Any-Any.

В обоих случаях все выглядит хорошо в функции предварительного просмотра Interface Builder для всех устройств и ориентации iPhone, но на симуляторе я всегда вижу расположение макета независимо от ориентации устройства.

Я использую Xcode 7.2, и я пробовал все симуляторы iPhone как на iOS 8.4, так и на 9.2. Никаких предупреждений об ограничениях автоопределения не видны ни в одном из классов размеров.

ответ

0

Проблема оказалась не связанной с использованием классов размеров. Я не заметил, что получаю это предупреждение при представлении проблемного контроллера: Presenting view controllers on detached view controllers is discouraged

Исправление этой проблемы и устранение этого предупреждения заставляют все работать должным образом.