2

MPMoviePlayerController を使用して UIViewcontroller でビデオを再生する必要があります。したがって、ビデオを再生する前に、ビデオがバッファリングされる前にアクティビティ インジケータ ビューを表示する必要があります。ビデオの再生が開始されたら、アクティビティ インジケーターを削除する必要があります。ビデオの再生が開始されるとすぐに通知を受け取る方法がわかりません。これに関する提案は非常に役立ちます。ありがとう。

4

2 に答える 2

5

あなたはおそらくこのようなものを探しています:

- (void)viewDidAppear:(BOOL)animated {
    NSLog(@"VIEW DID LOAD");
    // Register to receive a notification that the movie is now in memory and ready to play
    [[NSNotificationCenter defaultCenter] addObserver:self
                                             selector:@selector(movieLoadStateDidChange:)
                                                 name:MPMoviePlayerLoadStateDidChangeNotification
                                               object:nil];

}

-(void)movieLoadStateDidChange:(id)sender{
    NSLog(@"STATE CHANGED");
    if(MPMovieLoadStatePlaythroughOK ) {
        NSLog(@"State is Playable OK");
        NSLog(@"Enough data has been buffered for playback to continue uninterrupted..");
        aiv.hidden = YES;
        [aiv stopAnimating];
    }

}

また、このリンクからも役立つことがわかりました:http://www.sdkboy.com/?p=48

于 2012-06-12T14:49:36.760 に答える
1

if(MPMovieLoadStatePlaythroughOK ) { - このチェックは正しくありません。それは常にTRUEです。

見てみましょう: UIActivityIndi​​cator を MPMoviePlayerController の上にフルスクリーン モードで表示できますか?

于 2013-06-29T13:32:09.933 に答える