0

私がやりたいことはとてもシンプルです。

私はUIViewController(ポートレートのみ!)を持っており、そのビュー内に(ビューの一部に)ビデオを表示したいと考えています。UIButton次に、ユーザーがビデオを全画面表示できるようにするを追加します。ビデオがフルスクリーンの場合、ビデオはデバイスの向きに従いますが、ビデオをUIViewController表示するのではなく、ユーザーが横向きでフルスクリーンモードを終了したUIViewController場合、縦向きにする必要があります! また、ビデオがフルスクリーンのときにカスタム コントロールを追加したいと考えています。

どうすればよいか分かりますか?

ありがとう

4

1 に答える 1

0

私は以前にこれをやったことがあります。ただsetTransform:CGAffineTransformMakeRotation(M_PI/2)

- (void)rotateVideoToLandscape {

    int64_t delayInSeconds = 0.5;
    dispatch_time_t popTime = dispatch_time(DISPATCH_TIME_NOW, delayInSeconds * NSEC_PER_SEC);
    dispatch_after(popTime, dispatch_get_main_queue(), ^(void){
        [[UIApplication sharedApplication] setStatusBarOrientation:UIInterfaceOrientationLandscapeRight];
    });

    // Before rotate the video, exchange the width & height for a better user-experience.
    [self.view setBounds:CGRectMake(0, 0, self.view.height, self.view.width)];
    [self.view setCenter:CGPointMake(self.view.width/2, self.view.height/2)];
    [self.view setTransform:CGAffineTransformMakeRotation(M_PI/2)];

    CGRect playerRect = self.view.bounds;
    // Do something needed.
    self.moviePlayerController.view.frame = playerRect;
}
于 2013-01-09T02:14:50.280 に答える