Приложения для iPad должны поддерживать все четыре ориентации интерфейса.
РЕДАКТИРОВАТЬ: Мне не удалось найти официальные документы для цитирования.Может случиться так, что приложения для iPad должны запускать во всех направлениях, хотя вы можете заставить некоторые фрагменты быть альбомными, если это "разумно".Независимо от того, отклоняет ли Apple ваше приложение или нет, это другая проблема, но я думаю, что они вряд ли отклонят видео-приложение, которое воспроизводит видео в альбомной ориентации.
После некоторых экспериментов, кажется, работает следующее:
@interface MyMovieViewController : MPMoviePlayerViewController
@end
@implementation MyMovieViewController
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation
{
return UIInterfaceOrientationIsLandscape(toInterfaceOrientation);
}
@end
Затем просто создайте экземпляр MyMovieViewController вместо MPMoviePlayerViewController.
EDIT 2: MPMoviePlayerViewController отличается от MPMoviePlayerController;Вы используете его, чтобы получить поведение MPMoviePlayerController 2.0-3.1.Вам необходимо добавить контроллер представления в иерархию VC, но это довольно просто (и намного проще, чем возиться с преобразованиями представлений):
MPMoviePlayerViewController * vc = [[MyMovieViewController alloc] initWithContentURL:aUrl];
[self presentMoviePlayerViewControllerAnimated:vc];
[vc.moviePlayer play];