如何在ios6中播放video
我很困惑:
MPMoviePlayerViewController和MPMoviePlayerController
在ios6中本地播放video的最佳方式是什么?
这是我的代码
NSURL * url = [NSURL fileURLWithPath: [[NSBundle mainBundle] pathForResource: @ "17" OfType: @ "mov"]]; MoviePlayer = [[MPMoviePlayerViewController alloc] initWithContentURL: url]; [self presentMoviePlayerViewControllerAnimated: MoviePlayer]; [moviePlayer.moviePlayer play]; [[NSNotificationCenter defaultCenter] addObserver: self selector: @ selector (moviePlayerPlaybackStateChanged :) name: MPMoviePlayerPlaybackStateDidChangeNotification object: nil]; } -(void)moviePlayerPlaybackStateChanged:(NSNotification *)notification { }
MPMoviePlayerViewController用于播放全屏video,主要用于电话。
MPMoviePlayerController可以用于embedded式video,即在任何iPad上都不是全屏。 你需要把一个空的视图拖到故事板的场景中,并给它所需的大小。 然后,在代码中,将电影播放器放置在该子视图中。 你的代码的第一部分应该在viewDidLoad中;
//movieplayer initialization NSString *path = [[NSBundle mainBundle] pathForResource:@"videoName" ofType:@"m4v"]; NSURL *videoURL = [NSURL fileURLWithPath:path]; moviePlayer = [[MPMoviePlayerController alloc] initWithContentURL:videoURL]; [moviePlayer setControlStyle:MPMovieControlStyleNone]; // for custom controls, for default controls you can leave this line out.
这部分进入视野将会出现;
moviePlayer.repeatMode = MPMovieRepeatModeOne; // for looping [moviePlayer.view setFrame: self.videoSuper.bounds]; [self.videoSuper addSubview: moviePlayer.view]; [moviePlayer prepareToPlay]; [moviePlayer play];
videoSuper是故事板中添加的子视图。 一定要正确地把它连接起来;
//in .h @property (weak, nonatomic) IBOutlet UIView *videoSuper;