MPMoviePlayerViewController和MPMoviePlayerController 使用场合不一样
MPMoviePlayerViewController是在iOS3.2以后的平台上使用。MPMoviePlayerController在3.2之前使用,虽然在3.2之后也能使用,但是使用方法略有改变,建议3.2之后使用MPMoviePlayerViewController。
3.2之后,MPMoviePlayerController作为MPMoviePlayerViewController的一个属性存在。
为了兼用以前版本 可以用如下方式使用(引用自一个网友的)
-(void) initAndPlay:(NSString *)videoURL
{
if ([videoURL rangeOfString:@"http://"].location!=NSNotFound||[videoURL rangeOfString:@"https://"].location!=NSNotFound)
{
NSURL *URL = [[NSURL alloc] initWithString:videoURL];
if (URL) {
if ([[[UIDevice currentDevice] systemVersion] doubleValue] >= 3.2)
{//3。2以后
MPMoviePlayerViewController* tmpMoviePlayViewController=[[MPMoviePlayerViewController alloc] initWithContentURL:URL];
if (tmpMoviePlayViewController)
{
self._moviePlayViewController=tmpMoviePlayViewController;
[self presentMoviePlayerViewControllerAnimated:_moviePlayViewController];
_moviePlayViewController.moviePlayer.movieSourceType = MPMovieSourceTypeUnknown;
[_moviePlayViewController.moviePlayer play];
}
[tmpMoviePlayViewController release];
}
else if([[[UIDevice currentDevice] systemVersion] doubleValue] < 3.2)
{//3。2以前
MPMoviePlayerController* tmpMoviePlayController=[[MPMoviePlayerController alloc] initWithContentURL:URL];
if (tmpMoviePlayController)
{
self._moviePlayerController=tmpMoviePlayController;
[_moviePlayerController play];
}
[tmpMoviePlayController release];
}
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(playbackDidFinish) name:MPMoviePlayerPlaybackDidFinishNotification object:nil];
}
[URL release];
}
}
MPMoviePlayerViewController的使用:
MPMoviePlayerViewController的属性moviePlayer提供了各种设置,拉伸、控制模式、循环模式、自动播放等等,最后一步就是别忘了播放。
- _moviePlayer.controlStyle = MPMovieControlStyleNone;
- _moviePlayer.shouldAutoplay = YES;
- _moviePlayer.repeatMode = MPMovieRepeatModeOne;
- [_moviePlayer setFullscreen:YES animated:YES];
- _moviePlayer.scalingMode = MPMovieScalingModeAspectFit;
- [_moviePlayer play];