こんにちは、
私のアプリケーションにはタブバーナビゲーションがあり、その他は回転がサポートされていないポートレートモードです。今私はこのビデオをストリーミングする必要があります。 基本的にうまく動作するMPMoviePlayerControllerを使用していますが、自動的にランドスケープモードに切り替えると言われていますが、ポートレートモードのままです。MPMoviePlayerControllerは、回転を自動的にランドスケープに変更しません。
- (IBAction) openFourthInfo:(id)sender{
NSURL *url = [NSURL URLWithString:@"http://my-video.mp4"];
MPMoviePlayerController *player = [[MPMoviePlayerController alloc] initWithContentURL:url];
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(moviePlaybackComplete:)
name:MPMoviePlayerPlaybackDidFinishNotification
object:player];
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(userPressedDone:)
name:MPMoviePlayerWillExitFullscreenNotification
object:player];
[self.view addSubview:player.view];
[mainView setHidden:YES]; //Need to hide another subview here
player.fullscreen = YES;
[player play];
}
これはPlayerの呼び出し方法です。 userPressedDone:
とmoviePlaybackComplete:
では、私は基本的にちょうどmainView.setHidden = YES;
を設定し、オブザーバーを削除し、プレーヤーを取り外してリリースします。
特別なことはありません。プレーヤーがなぜ肖像画にとどまるのでしょうか? 私は
[[UIApplication sharedApplication] setStatusBarOrientation:UIInterfaceOrientationLandscapeRight animated:YES];
を試してみましたこれは、変更ステータスバーのアニメーションが、ビューは同じとどまりました。追加することによって
[[player view] setBounds:CGRectMake(20, 0, 480, 320)];
[[player view] setCenter:CGPointMake(160, 240)];
[[player view] setTransform:CGAffineTransformMakeRotation(M_PI/2)];
何も起こりません。 player view
をself view
に置き換えると、私はちょうどプレーヤービューではなく、回転する親ビューを取得します。
問題はどこにありますか?どのように解決できますか?私は5時間ほどかかりました.-
ありがとう!
速い返信をいただきありがとうございました。しかし、 "完了"ボタンが消えてしまったので、映画を中止する機会はありません。どうすれば元に戻すことができますか? – Nareille
@Nareille - 答えを更新しました。 – DHamrick
THanks again! 'moviePlayerController.fullscreen = TRUE;'は、mainViewを表示してそれを分解し、ビューを回転させずに残して、それは素晴らしいです!ありがとうございました! – Nareille