3



iOSアプリを作っています。

MPMoviePlayerControllerを使用していますが、背景が黒になっています。

このURLで問題は解決できると思いますが、使い方がわかりません。
MPMoviePlayerControllerの背景色がくっつかない

私のコードはこれです。

NSString *path = [[NSBundle mainBundle] pathForResource:@"movie_files" ofType:@"m4v"];
NSURL *videoURL = [NSURL fileURLWithPath:path];

moviePlayer =  [[MPMoviePlayerController alloc]
                initWithContentURL:videoURL];

//setting
moviePlayer.scalingMode =MPMovieScalingModeAspectFit;
moviePlayer.controlStyle=MPMovieControlStyleDefault;
moviePlayer.shouldAutoplay=NO;
[moviePlayer.view setFrame:CGRectMake(20, 20, 280, 200)];    

//notification
[[NSNotificationCenter defaultCenter] addObserver:self
                                         selector:@selector(moviePlayBackDidFinish:)
                                             name:MPMoviePlayerPlaybackDidFinishNotification
                                           object:moviePlayer];

//clearColor
UIView *subV =[[UIView alloc]init];
for(subV in moviePlayer.backgroundView.subviews) {
    subV.backgroundColor = [UIColor clearColor];
}
[moviePlayer.view addSubview:subV];    
[self.view addSubview:moviePlayer.view];
//show white screen

明確な背景の方法を教えてください。

4

3 に答える 3

13

次のように変更する必要があります。

moviePlayer.backgroundView.backgroundColor = [UIColor clearColor];
for(UIView *aSubView in moviePlayer.view.subviews) {
    aSubView.backgroundColor = [UIColor clearColor];
}
于 2012-08-27T14:10:39.510 に答える
10

背景ビューの色を設定するだけではうまくいきませんでした。

ビューの背景色も変更する必要があると思います。コードをもう1行追加しましたが、問題なく動作します。ビデオの背景全体が透明になりました。:)ありがとう@Jordi

moviePlayer.backgroundView.backgroundColor = [UIColor clearColor];

moviePlayer.view.backgroundColor = [UIColor clearColor];

for(UIView *aSubView in moviePlayer.view.subviews) {
    aSubView.backgroundColor = [UIColor clearColor];
}
于 2013-05-10T05:56:28.537 に答える
0

もう1つのオプションは、ビデオプレーヤーを非表示にして、表示する準備ができたら表示することです。

警告にはIO6が必要です>=私は信じています:

https://stackoverflow.com/a/19459855/401896

于 2013-10-18T22:18:31.467 に答える