Принудительно повернуть UIViewController в статусе Портрет - PullRequest
0 голосов
/ 05 сентября 2018

В этой среде (Исправлена ​​поддержка ориентации «Портрет» в конфигурации проекта)

enter image description here

Можете ли вы показать определенный UIViewController в альбомной ориентации?

1 Ответ

0 голосов
/ 05 сентября 2018

Короткий ответ: вы не можете, потому что в соответствии с Apple документами здесь

Система пересекает поддерживаемые ориентации контроллера вида с поддерживаемыми ориентациями приложения (как определено в Info.plist файл или приложение делегата приложение (_: supportInterfaceOrientationsFor :) метод) и поддерживаемые ориентации устройства, чтобы определить, следует ли повернуть.

Чтобы реализовать то, что вам нужно, вы должны также установить разрешенную ориентацию для ландшафта, а затем реализовать следующее в контроллерах вида, чтобы разрешить либо книжную, либо альбомную ориентации (или оба):

override var supportedInterfaceOrientations: UIInterfaceOrientationMask {
    return UIInterfaceOrientationMask.portrait//or UIInterfaceOrientationMask.landscape
  }

Затем, чтобы задать определенную ориентацию, вы можете установить ориентацию для UIDevice:

UIDevice.current.setValue(UIInterfaceOrientation.landscapeLeft.rawValue, forKey: "orientation")
...