Что-нибудь изменилось в 5.1, что повлияет на работу MPMoviePlayerViewController в отношении ориентации устройства?
Сегодня я начал получать от пользователей отчеты о том, что видео воспроизводилось только в портретном режиме. Я понял, что они используют 5.1, и я быстро обновил устройство, чтобы воссоздать ситуацию. Мой код не изменился и отлично работает в 4.x, 5.0 и 5.01.
Все виды в моем приложении отображаются в портретном режиме, за исключением того, что когда пользователь нажимает на видео, проигрыватель фильма должен захватить весь экран и больше перейти в ландшафт. Приложение использует 5.0 SDK, но ориентировано на 4.0. Вот код, который я использую для отображения видео:
VideoPlayer *vp = [[VideoPlayer alloc] initWithContentURL:movieURL];
vp.moviePlayer.movieSourceType = src;
vp.moviePlayer.controlStyle = MPMovieControlStyleFullscreen;
vp.moviePlayer.shouldAutoplay = TRUE;
[self presentMoviePlayerViewControllerAnimated:vp];
VideoPlayer является подклассом MPMoviePlayerViewController , где shouldAutorotateToInterfaceOrientation переопределяется следующим образом:
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
return (interfaceOrientation == UIDeviceOrientationLandscapeLeft);
}
Этот шаблон рекомендуется во всем Интернете и даже в Apple. Я не понимаю, почему он не работает под iOS 5.1 или почему больше людей не жалуются на это.
Любая помощь будет принята с благодарностью.