У меня странное поведение, когда мой MPMoviePlayerViewController
не auto
-вращается, когда изменяется orientation
. Тем не менее, я воссоздал одну и ту же иерархию представлений в новом проекте, и когда игрок MPMoviePlayerViewController
поднялся, он повернулся к каждой ориентации. Я просматривал проект, который искал все, что могло бы установить ориентацию явно, но ничего.
Я изложу всю соответствующую информацию здесь и то, что я пробовал до сих пор.
В настоящее время иерархия представлений выглядит следующим образом:
- Контроллер навигации
- "Root" View Controller < - контроллер навигации rootViewController
- "Feed" View Controller < - нажата на стек навигации с помощью Root VC
- "Предварительный просмотр" Контроллер просмотра < - Представлен как модальный VC из фида
- Подкласс MPMoviePlayerViewController < - представлен Feed VC через 'presentMoviePlayerViewControllerAnimated'
Каждый класс в иерархии представлений реагирует на shouldAutorotateToInterfaceOrientation с YES только для UIInterfaceOrientationPortrait.
Вещи, которые я пробовал:
- Вручную отправив стек
shouldAutorotateToInterfaceOrientation
вверх из VC корневого уровня доMPMoviePlayerViewController
- Переопределение реализации
MPMoviePlayerViewController
подклассаMPMoviePlayerViewController
shouldAutorotateToInterfaceOrientation
для возврата YES как для ориентации ландшафта, так и для всех ориентаций YES. - Настройка "Ориентация поддерживаемого устройства" на вкладке сводки проекта.
- Вызов
presentMoviePlayerViewControllerAnimated
из других VC, таких как Feed VC
Если видеопроигрыватель правильно вращается в новом проекте с одинаковой иерархией взглядов, что можно получить здесь. Любые идеи относительно того, где ориентация может застревать?