/ / iPhone SDK 4: авторотація відео з MPMoviePlayerViewController - iphone, какао-сенсор, відео

iPhone SDK 4: авторотація відео з MPMoviePlayerViewController - iphone, cocoa-touch, відео

Не могли б ви показати приклад 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;
}

}