MPMoviePlayerController的使用(这个9.0之后已经废弃了,9.0之后的我会补充,这里只是想提一下)
时间:2019-09-17
本文章向大家介绍MPMoviePlayerController的使用(这个9.0之后已经废弃了,9.0之后的我会补充,这里只是想提一下),主要包括MPMoviePlayerController的使用(这个9.0之后已经废弃了,9.0之后的我会补充,这里只是想提一下)使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
MPMoviePlayerController的使用:
RecordVideoplayView.h 文件:
#import <UIKit/UIKit.h> #import <MediaPlayer/MediaPlayer.h> NS_ASSUME_NONNULL_BEGIN @interface RecordVideoplayView : UIView /** 不过这个9.0之后已经过时了 */ @property (nonatomic ,strong)MPMoviePlayerController *Videoplayer; @property (nonatomic ,strong) NSString *VideoplayUrl;//视频播放的地址 - (void)Videoplayshow ;//显示视频的view的方法 也可以添加到自己制定的容器上,不实现这个方法 - (void)VideoplayDias ;//视频不显示的方法 @end NS_ASSUME_NONNULL_END
RecordVideoplayView.m
#import "RecordVideoplayView.h" #import <Masonry.h> @implementation RecordVideoplayView - (instancetype)initWithFrame:(CGRect)frame{ self = [super initWithFrame:frame]; if (self) { self.backgroundColor =[UIColor blackColor]; [self AddControls]; [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(myMovieFinishedCallback:) name:MPMoviePlayerPlaybackDidFinishNotification object:_Videoplayer]; } return self; } - (void)AddControls { [self addSubview:self.Videoplayer.view]; [self.Videoplayer.view mas_makeConstraints:^(MASConstraintMaker *make) { make.left.right.bottom.mas_equalTo(self); make.top.mas_equalTo(self); } ]; } - (void)setVideoplayUrl:(NSString *)VideoplayUrl { _VideoplayUrl =VideoplayUrl; self.Videoplayer.contentURL =[NSURL fileURLWithPath:_VideoplayUrl]; [self.Videoplayer play]; } - (MPMoviePlayerController *)Videoplayer { if (!_Videoplayer) { _Videoplayer =[[MPMoviePlayerController alloc]init]; _Videoplayer.movieSourceType = MPMovieSourceTypeFile;// 播放本地视频时需要这句 _Videoplayer.shouldAutoplay = YES;// 是否自动播放(默认为YES) _Videoplayer.controlStyle = MPMovieControlStyleFullscreen;//播放模式,全屏播放 } return _Videoplayer; } -(void)myMovieFinishedCallback:(NSNotification*)notify { //释放的操作代码 [self VideoplayDias]; } - (void)Videoplayshow { UIWindow *window = [UIApplication sharedApplication].keyWindow; [window addSubview:self]; } - (void)VideoplayDias { [UIView animateWithDuration:0.3 animations:^{ self.backgroundColor = [UIColor clearColor]; } completion:^(BOOL finished) { [self removeFromSuperview]; }]; } @end
效果:
再次提示,该类已经过时,只是学的时候给自己了解下而已
原文地址:https://www.cnblogs.com/hualuoshuijia/p/11532445.html
- memory_profiler的使用
- 使用line_profiler查看api接口函数每行代码执行时间
- GAN 的 keras 实现
- 双向 LSTM
- scrapy回调函数传递参数
- python更新数据库脚本两种方法
- 使聊天机器人具有个性
- 遇到502错误,invalid request block size 解决方法
- python中json.loads,dumps,jsonify使用
- sqlalchemy和flask-sqlalchemy几种分页操作
- 一个 tflearn 情感分析小例子
- 前端js,后台python实现RSA非对称加密
- 运行mysql时,提示Table ‘performance_schema.session_variables’ doesn’t exist
- ODL应用开发之MD-SAL中级教程
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Access数据库密码破解 C#
- 没啥用,更换注册表信息使webbrower选择适合的版本
- linux下分割和合并压缩包
- 编译.net .net Core程序 代码,仅做备份
- js删除数组对象中符合条件的数据
- .net core webapi jwt 更为清爽的认证 ,续期很简单(2)
- 手把手教你写一个windows服务 【基于.net】 附实用小工具{注册服务/开启服务/停止服务/删除服务}
- 一网打尽枚举操作 .net core
- Jenkins 发布.net core 程序,服务端无法下载nuget包的解决方法 error NU1102: 找不到版本为 (>= 3.1.6) 的包
- NET Core Kestrel部署HTTPS 一个服务器绑一个证书 一个服务器绑多个证书
- .net core webapi jwt 更为清爽的认证 ,续期很简单(1)
- 用flask来在线管理你的iptables
- Linux Shell命令速查表
- Windows10实现滑动锁屏
- Vue&uni-app在微信浏览器隐藏titleNView的一个方法