2016-10-19 8 views
0

Мой пользовательский AVPlayerViewController не будет авторотировать, если был создан экземпляр предыдущего контроллера представлений. Если я представляю AVPlayerViewController, он вращается, и если я представляю предыдущий контроллер представлений, он вращается. Вот мой код для создания экземпляра контроллера вида:AVPlayerViewController не вращается

let vc = self.storyboard!.instantiateViewController(withIdentifier: "MovieVC") as! MovieVC 
vc.movie = self.movie 
self.navigationController?.pushViewController(vc, animated: true) 

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

ответ

0

Проблема в том, что вы находитесь не, представляя контроллер точки зрения. Вы подталкиваете его. Это означает, что сам навигационный контроллер отвечает за поворот, поэтому вы не получаете специальной авторотации для этого контроллера вида.

только способ придать этой точке зрения контроллер свою собственную власть над авторотации является представить его:

self.present(vc, animated: true) 
+0

Это не похоже, чтобы сделать трюк. AVPlayerViewController все еще не вращается. – BroFist5

+0

Ну, я не знаю, что такое настройки авторотации AVPlayerViewController. Но я заверяю вас, что если он настроен на поворот, это произойдет. – matt

+0

Я обнаружил, что если AVPlayerViewController представлен в ландшафтном режиме, а ориентация устройства меняется на портрет, он авторотирует, но не наоборот – BroFist5