Не могли б ви показати приклад shouldAutorotateToInterfaceOrientation
використання методу як частини MPMoviePlayerViewController? Наскільки я знаю, використовуючи shouldAutorotateToInterfaceOrientation
метод доступний не тільки для UIView, але ідля MPMoviePlayerViewController з SDK 3.2. Я використовував його в UIView, у версії 3.1, але не розумію, як використовувати його в класі MPMoviePlayerViewController.
Це те, що я маю на даний момент:
-(IBAction) playMovie {
//declaring path to file and stuff...
MPMoviePlayerViewController *playerViewController = [[MPMoviePlayerViewController alloc] initWithContentURL:url];
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(moviePlayBackDidFinish:)
name:MPMoviePlayerPlaybackDidFinishNotification
object:[playerViewController moviePlayer]];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(moviePlayBackDidFinish:) name:MPMoviePlayerPlaybackDidFinishNotification object:[playerViewController moviePlayer]];
MPMoviePlayerController *player = [playerViewController moviePlayer];
[self.view addSubview:playerViewController.view];
player.controlStyle = MPMovieControlStyleDefault;
player.shouldAutoplay = YES;
[player setFullscreen:YES animated:YES];
}
- (void)moviePlayBackDidFinish:(NSNotification*)notification {
MPMoviePlayerViewController *moviePlayer = [notification object];
[[NSNotificationCenter defaultCenter] removeObserver:self
name:MPMoviePlayerPlaybackDidFinishNotification
object:moviePlayer];
[moviePlayer.view removeFromSuperview];
[moviePlayer release];
}
Це працює чудово, але мені потрібно знати, як реалізувати авторотацію відео. Метод, використаний для цього в UIView, не допомагає.
Дякую.
Відповіді:
0 для відповіді № 1Хм, це звучить дивно, але я був впевнений, що цей метод не повинен оголошуватися поза блоком playMovie. Я помилився, наступний код вставлений як завжди, і він робить те, що мені потрібно.
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
// Return YES for supported orientations
if (interfaceOrientation == UIInterfaceOrientationPortrait ||
interfaceOrientation == UIInterfaceOrientationLandscapeLeft ||
interfaceOrientation == UIInterfaceOrientationLandscapeRight)
return YES;
else {
return NO;
}
}