У меня есть проблема, которая решает мою проблему и должна быть настолько простой, чтобы решить. Вот мой код:
-(IBAction)playMovie:(id)sender{
NSString *filepath = [[NSBundle mainBundle] pathForResource:@"myMovie" ofType:@"MOV"];
NSURL *fileURL = [NSURL fileURLWithPath:filepath];
moviePlayerController = [[MPMoviePlayerController alloc] initWithContentURL:fileURL];
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(moviePlaybackComplete:)
name:MPMoviePlayerPlaybackDidFinishNotification
object:moviePlayerController];
[self.view addSubview:moviePlayerController.view];
//[moviePlayerController setOrientation:UIInterfaceOrientationLandscapeLeft];
moviePlayerController.fullscreen = YES;
moviePlayerController.scalingMode = MPMovieScalingModeFill;
[moviePlayerController play];
}
- (void)moviePlaybackComplete:(NSNotification *)notification
{
[[UIApplication sharedApplication] setStatusBarOrientation:UIInterfaceOrientationPortrait];
moviePlayerController = [notification object];
[[NSNotificationCenter defaultCenter] removeObserver:self
name:MPMoviePlayerPlaybackDidFinishNotification
object:moviePlayerController];
[moviePlayerController.view removeFromSuperview];
[moviePlayerController release];
}
И ориентация:
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation
{
if(UIInterfaceOrientationIsPortrait(toInterfaceOrientation)) {
return(YES);
}
if(UIInterfaceOrientationIsLandscape(toInterfaceOrientation)) {
return([moviePlayerController isFullscreen]);
}
return(NO);
}
Сначала это работает как нужно. Ориентация изначально принудительно установлена на портретную, затем воспроизводится фильм, и альбомная ориентация позволяет вращать фильм и просматривать его в альбомной ориентации. Затем после нажатия кнопки «Готово» и завершения фильма, интерфейс остается в альбомной ориентации. Мне нужно, чтобы его вернули в портретный режим ... Я видел решения, такие как
[[UIDevice currentDevice] setOrientation:UIInterfaceOrientationPortrait];
, который сейчас кажется устаревшим с ios 4.0
В идеале, как только запускается метод «Законченный фильм», он должен автоматически поворачиваться в портретный режим!
какие решения?