0

UIImageViewフルスクリーンの MPMoviePlayerController にロゴ ( ) を追加したいと考えています。

MPMoviePlayerControllerがフルスクリーン モードでない場合は正常に動作します。フルスクリーンに切り替えると、MPMoviePlayerController削除された(非表示の)すべての追加ビューが表示されます。

これが私のコードです:

- (void)setupMPMoviePlayer{
    [self.moviePlayer.view removeFromSuperview];
    [self removeNotifications];
    self.moviePlayer = nil;

    self.moviePlayer = [[MPMoviePlayerController alloc] init];

    [self addNotifications];

    [self.moviePlayer.view setFrame:self.view.bounds];
    self.moviePlayer.view.autoresizingMask = UIViewAutoresizingFlexibleHeight | UIViewAutoresizingFlexibleWidth;
    self.moviePlayer.fullscreen = NO;
    [self.view addSubview:self.moviePlayer.view];


    if ([self.moviePlayer respondsToSelector:@selector(setAllowsAirPlay:)])
        [self.moviePlayer setAllowsAirPlay:YES];

    [self.moviePlayer setContentURL:[NSURL URLWithString:urlString]];
    [self.moviePlayer setFullscreen:YES animated:YES];
    [self addLogoViewAtView:self.moviePlayer.view];
}

- (void)addLogoViewAtView:(UIView *)view{        
    UIView *theView = [view viewWithTag:101];
    if (theView.superview) {
        [theView removeFromSuperview];
    }

    UIImageView *logoView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"logo_weiss.png"]];
    logoView.tag = 101;
    logoView.frame = CGRectMake( logoView.image.size.width - 100.0,
                                100.0,
                                logoView.image.size.width,
                                logoView.image.size.height);
    logoView.autoresizingMask = UIViewAutoresizingFlexibleLeftMargin | UIViewAutoresizingFlexibleBottomMargin;    
    [view addSubview:logoView];
    [view bringSubviewToFront:logoView];
}

今私の質問にサブビューを追加する別の方法はありMPMoviePlayerControllerますか?

アプリケーションのウィンドウにロゴを追加できますが、これはあまりきれいではありません。

どうすればこれを行うことができるかについて誰にも考えがありますか?

4

1 に答える 1

0

最も可能性の高いフルスクリーン モードでは、アプリケーションの keyWindow に MPMoviePlayerController ビューを追加するか、モーダル ビュー コントローラーを上に表示します。そのため、window.subviews または moviePlayer のモーダル ビュー コントローラーでビューを探すことができます。

于 2012-11-28T11:25:38.293 に答える