0

ビューコントローラーを縦向きに保ち、サブビューをデバイスの向きに応じて回転できるようにしたい。どうやってやるの?サブビューに MPMoviePlayerController があり、ビデオを横向きで視聴できるようにしたいのですが、メイン ビュー コントローラーは常に縦向きのままにしておきたいです。多くのアプリでこれが行われているのを見てきましたが、どこにも答えが見つかりません。

これが私のコードです。

-(IBAction)playMovie:(id)sender{

NSURL *fileURL   =   [NSURL URLWithString:@"http://www.thebasementonline.com/btv/NicoSmall.mov"];
MPMoviePlayerController *moviePlayerController = [[MPMoviePlayerController alloc] initWithContentURL:fileURL];  

[[AVAudioSession sharedInstance] setDelegate: self];
NSError *setCategoryError = nil;
[[AVAudioSession sharedInstance] setCategory: AVAudioSessionCategoryPlayback error: &setCategoryError];

[[NSNotificationCenter defaultCenter] addObserver:self
                                         selector:@selector(moviePlaybackComplete:)
                                             name:MPMoviePlayerPlaybackDidFinishNotification
                                           object:moviePlayerController];

[self.view addSubview:moviePlayerController.view];
moviePlayerController.fullscreen = YES;


[moviePlayerController play];

}

4

1 に答える 1

0

これを shouldRotateOrientation で作成できます...

if(self.view.subviews containsObject:moviePlayer.view){
 return YES;
}
return (interfaceOrientation == UIInterfaceOrientationPortrait);

問題は、プレーヤー ビューを削除し、それが横向きだった場合、メイン コントローラーも横向きになることです:/すっごく別のビュー コントローラーを使用する必要があります...

于 2012-06-14T10:21:09.157 に答える