首页 > 代码库 > iOS疯狂详解之视频播放MPMoviePlayerViewController

iOS疯狂详解之视频播放MPMoviePlayerViewController

需要导入的框架

#import <MediaPlayer/MediaPlayer.h>

MediaPlayer.framework


MPMoviePlayerViewController:

打开网络视频:

-(void)openmovie

{

    MPMoviePlayerViewController *movie = [[MPMoviePlayerViewControlleralloc]initWithContentURL:[NSURLURLWithString:@"视频网络地址"]];

    

    [movie.moviePlayerprepareToPlay];

    [self presentMoviePlayerViewControllerAnimated:movie];

    [movie.moviePlayersetControlStyle:MPMovieControlStyleFullscreen];

    

    [movie.viewsetBackgroundColor:[UIColorclearColor]];

    

    [movie.view setFrame:self.view.bounds];

    [[NSNotificationCenterdefaultCenter]addObserver:self

     

                                             selector:@selector(movieFinishedCallback:)

     

                                                 name:MPMoviePlayerPlaybackDidFinishNotification

     

                                               object:movie.moviePlayer];


}

-(void)movieFinishedCallback:(NSNotification*)notify{

    

    //视频播放完或者在presentMoviePlayerViewControllerAnimated下的Done按钮被点击响应的通知。

    

    MPMoviePlayerController* theMovie = [notifyobject];

    

    [[NSNotificationCenterdefaultCenter]removeObserver:self

     

                                                    name:MPMoviePlayerPlaybackDidFinishNotification

     

                                                  object:theMovie];

    

    [selfdismissMoviePlayerViewControllerAnimated];

    

}

打开本地视频:

-(void)openmovie

{

  

   NSString *url = [[NSBundlemainBundle]pathForResource:@"IMG_0322"ofType:@"mp4"];

    MPMoviePlayerViewController *playerViewController  = [[MPMoviePlayerViewControlleralloc]initWithContentURL:[NSURLfileURLWithPath:url]];

    [[NSNotificationCenterdefaultCenter]addObserver:selfselector:@selector(movieFinishedCallback:)

                                                name:MPMoviePlayerPlaybackDidFinishNotification

                                              object:[playerViewControllermoviePlayer]];


    [self.view addSubview:playerViewController.view];

    


    MPMoviePlayerController *player = [playerViewControllermoviePlayer];

    [playerplay];

    

}

- (void) movieFinishedCallback:(NSNotification*) aNotification {

   MPMoviePlayerController *player = [aNotificationobject];

    [[NSNotificationCenterdefaultCenter]removeObserver:selfname:MPMoviePlayerPlaybackDidFinishNotificationobject:player];

    [playerstop];

    [player.viewremoveFromSuperview];

   

}


更多iOS疯狂详解:http://blog.csdn.net/wanglongblog

iOS疯狂详解之视频播放MPMoviePlayerViewController