视频播放
需要导入框架MediaPlayer.framework
在文件中导入#import <MediaPlayer/MediaPlayer.h>
视频播放有两种方法,一个是MPMoviePlayerController,虽然名字是controller,但是他继承自NSObject,并不是视图,他有一个view属性,可以设置大小.
另一个是视频播放视图控制器MPMoviePlayerViewController,弹出一个全屏的视频播放界面,不支持改变大小.
方法一:MPMoviePlayerController:
MPMoviePlayerController *movie=[[MPMoviePlayerController alloc]init]; _movie.contentURL=url; _movie.view.frame=CGRectMake(0, 20, 375, 550); //添加到窗口 [self.view addSubview:_movie.view]; //播放 [_movie play];
当视频播放完后,movie.view并不会自动移除.但是视频播放完后,系统会产生一个播放完毕通知,所以我们建立一个通知中心来获取.
//注册通知,检测视频是否播放完成 [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(stopPlay) name:MPMoviePlayerPlaybackDidFinishNotification object:nil]; //通知方法 -(void)stopPlay { [_movie.view removeFromSuperview]; }
方法二:MPMoviePlayerViewController:
MPMoviePlayerViewController *playerViewController=[[MPMoviePlayerViewController alloc]initWithContentURL:url]; //将视频播放器界面模态弹出,并且自动播放 [self presentViewController:playerViewController animated:YES completion:nil];
MPMoviePlayerViewController播放完毕后会自动弹出,不需要通知中心管理.
注:url为视频链接,两者都可以直接播放网络链接.
时间: 2024-10-14 00:51:14