MPMoviePlayerController 类通过一个NSURL来初始化,这个URL可以使本地的,也可以是远程的。初始化需要通过 initWithContentURL 方法来实现:
MPMoviePlayerController *moviePlayer = [ [ MPMoviePlayerController alloc]initWithContentURL:[NSURL urlWithString:@"http://"] ];//远程或者
NSString* path =[ NSString stringWithFormat:@"%@/Documents/video.3gp",NSHomeDirectory()];//本地路径 MPMoviePlayerController *moviePlayer = [ [ MPMoviePlayerController alloc]initWithContentURL:[NSURL fileURLWithPath:path]];//本地的二、属性设置
moviePlayer.moviewControlMode = MPMovieControlModeDefault;可以使用下列样式:(moviewControlMode 已废弃)
MPMovieControlModeHidden 没有控制器
moviePlayer.controlStyle=MPMovieControlStyleEmbedded;
MPMovieControlStyleNone 没有控制器
MPMovieControlStyleEmbedded 显示在页面底部
MPMovieControlStyleFullscreen 大图标显示
moviePlayer.scallingMode = MPMovieScallingModeAspectFit;你可以使用下列宽高比值:
moviePlayer.backgroundColor = [UIColor redColor];三、播放和停止电影
[ moviePlayer play ];当用户点击Done按钮,或者 stop 方法被调用都会停止
[ moviePlayer stop ];
当电影停止播放后会自动切回播放前应用程序所在的视图。
NSNotificationCenter* notificationCenter = [NSNotificationCenter defaultCenter]; [ notificationCenter addObserver:self selector:@selector(moviePlayerPreloadFinish:) name:MPMoviePlayerContentPreloadDidFinishNotification object:moviePlayer ];通知会发到你指定的委托类和目标方法。通知参数让你可以知道是哪个事件触发了委托方法:
-(void)moviePlayerPreloadDidFinish:(NSNotification*)notification{ //添加你的处理代码 }你会观察到以下通知:
注意:使用通知之后一定要移除
- (void)dealloc { [[NSNotificationCenter defaultCenter] removeObserver:self]; }