0

ビューでは、映画をフルスクリーンで再生するための次のコードがあります。

NSURL *movieURL = [NSURL URLWithString:@"http://stream.qtv.apple.com/events/jan/1201oihbafvpihboijhpihbasdouhbasv/12pibasvpqihbsdfvihbasdv01_iphone_vod_ref.mov"];

self.mpc = [[MPMoviePlayerViewController alloc] initWithContentURL:movieURL];
NSLog(@"self mpc: %@", self.mpc);
[[NSNotificationCenter defaultCenter] addObserver:self  
                                         selector:@selector(moviePlayBackDidFinish:)  
                                             name:MPMoviePlayerPlaybackDidFinishNotification  
                                           object:self.mpc ];
self.mpc.moviePlayer.movieSourceType = MPMovieSourceTypeUnknown;
self.mpc.moviePlayer.shouldAutoplay = YES; 
self.mpc.view.frame = self.view.frame;

[self.view addSubview:self.mpc.view];
self.mpc.moviePlayer.fullscreen = YES;
[self.mpc.moviePlayer play];

ビュー自体はこのコードで呼び出されています

 UIStoryboard *mainStoryboard = [UIStoryboard storyboardWithName:@"MainStoryboard_iPhone"
 bundle: nil];
 TestViewController *controller = [mainStoryboard 
 instantiateViewControllerWithIdentifier: @"testController"];
 [self presentModalViewController:controller animated:YES];

映画は問題なく再生されていますが、上部にはMPMoviePlayerViewControllerが使用していないスペースがあります。

これが問題を示すスクリーンショットです:https ://www.dropbox.com/s/1dje2ar6ynk6855/IMG_2447.PNG

(testControllerビューの背景を黄色にしました)

この映画はどのようにフルスクリーンで再生できますか?

4

2 に答える 2

0

たぶん、次のようなことを試してください:

    [UIView beginAnimations:nil context:NULL];
    [UIView setAnimationDuration:0.25];
    self.view.center = CGPointMake(self.view.center.x, self.view.center.y-100);
    [UIView commitAnimations];

それでもうまくいかない場合は、モーダル ビュー コントローラーを使用しないようにしてください。

于 2012-06-25T16:17:38.620 に答える
0

次のような別のモーダルでビデオを表示してみてください。

私はこのコードをテストしませんでしたが、おそらくあなたが提示している問題は以前のモーダルが原因であるため、問題を解決できると思います。

NSURL *movieURL = [NSURL URLWithString:@"http://stream.qtv.apple.com/events/jan/1201oihbafvpihboijhpihbasdouhbasv/12pibasvpqihbsdfvihbasdv01_iphone_vod_ref.mov"];

self.mpc = [[MPMoviePlayerViewController alloc] initWithContentURL:movieURL];
NSLog(@"self mpc: %@", self.mpc);
[[NSNotificationCenter defaultCenter] addObserver:self  
                                         selector:@selector(moviePlayBackDidFinish:)  
                                             name:MPMoviePlayerPlaybackDidFinishNotification  
                                           object:self.mpc ];
self.mpc.moviePlayer.movieSourceType = MPMovieSourceTypeUnknown;
self.mpc.moviePlayer.shouldAutoplay = YES; 
self.mpc.view.frame = self.view.frame;

[self presentModalViewController:self.mpc animated:NO];
self.mpc.moviePlayer.fullscreen = YES;
[self.mpc.moviePlayer play];
于 2012-06-25T16:24:30.017 に答える