Представить один вид в альбомной ориентации в приложении с портретной ориентацией - PullRequest
0 голосов
/ 13 октября 2018

У меня есть приложение (только для iPhone), которое только для портрета, но с одним исключением, представление, которое должно отображаться в ландшафтном режиме.

Я реализовал метод, описанный в принятом ответе в Как заблокировать ориентацию одного контроллера представления в портретном режиме только в Swift , хотя и в Objective-C.

Поскольку я переопределил методы -lockOrientation в -viewWillAppear и -viewWillDisappear ландшафтаконтроллер представления, я не понимаю, почему я вижу поворот после появления представления;Я бы подумал, что это произойдет до того, как появится вид.

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

Когда портретный вид отклонен, первый альбомный вид теперь повернут в портретный режим, хотя я также реализовал -supportedInterfaceOrientations и -ПредпочтительныйИнтерфейсОриентацияДля представления для ландшафтного режимаЭто было отмечено в UIViewController ориентации , но там не было никаких рабочих решений, размещенных там.

Оба контроллера представления, пейзаж и портрет, который его накладывает, представлены довольночем нажата.

Кроме того, единственным флагом, установленным в Info.plist проекта, является Portrait.Флаг полноэкранного режима не установлен.

Короче говоря, это горячий беспорядок, просто пытающийся сделать одно исключение для просмотра ориентации в моем приложении.

Любые подсказки длярешение описанного мной поведения будет с благодарностью.

...