0

现在我正在使用 mpmovieplayercontroller,但我需要关闭 mpmovieplayercontroller 才能播放另一个视频。有没有办法在不关闭 mpmovieplayercontroller 的情况下播放多个视频?

谢谢

4

1 回答 1

3

您可以订阅您MPMoviePlayerControllerMPMoviePlayerPlaybackDidFinishNotification通知。

例如,您有:

// this is a PoC code, you can do it a lot cleaner
// in your .h
@property (nonatomic, retain) MPMoviePlayerController *moviePlayer;
@property (nonatomic, retain) NSMutableArray *movieUrls; 
int indexPlayed;

// in your .m
- (void)setupPlayer { // or in your constructor, viewDidLoad, etc
    moviePlayer = [[MPMoviePlayer alloc] init];
    movieUrls = [NSMutableArray arrayWithObjects:nil, nil, nil]; // add your movie NSURLs here
    indexPlayed = 0;
    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(playerPlay:) name:MPMoviePlayerPlaybackDidFinishNotification object:moviePlayer];
    [self playerPlay:nil];
}
- (void)playerPlay:(NSNotification *)n {
    if (indexPlayed < [movieUrls count]) {
        moviePlayer.contentURL = [movieUrls objectAtIndex:indexPlayed++];
        [moviePlayer play];
    }
}
于 2009-11-05T16:49:22.797 回答