登录 立即注册
金钱:

Code4App-iOS开发-iOS 开源代码库-iOS代码实例搜索-iOS特效示例-iOS代码例子下载-Code4App.com

基于AVPlayer,支持横屏、竖屏(全屏播放还可锁定屏幕方向...

[复制链接]
来自: 任子丰 分类: iOS精品源码 上传时间: 2016-3-7 11:17:15

项目介绍:

文:renzifeng/ZFPlayer(github)

特性
  • 支持横、竖屏切换,在全屏播放模式下还可以锁定屏幕方向
  • 支持本地视频、网络视频播放
  • 支持在TableviewCell播放视频
  • 左侧1/2位置上下滑动调节屏幕亮度(模拟器调不了亮度,请在真机调试)
  • 右侧1/2位置上下滑动调节音量(模拟器调不了音量,请在真机调试)
  • 左右滑动调节播放进度
  • 断点下载功能
  • 切换视频分辨率


要求
  • iOS 8+
  • Xcode 6.0+
安装CocoaPods
pod 'ZFPlayer'
Then, run the following command:
$ pod install

下载运行Demo报错的,请确认安装cocopods环境,pod install,然后打开“Player.xcworkspace”

使用 (支持IB和代码)
设置状态栏颜色
请在info.plist中增加"View controller-based status bar appearance"字段,并改为NO
IB用法
直接拖UIView到IB上,宽高比为约束为16:9(优先级改为750,比1000低就行),代码部分只需要实现
[Objective-C] 查看源文件 复制代码
self.playerView.videoURL = self.videoURL;
// 返回按钮事件
__weak typeof(self) weakSelf = self;
self.playerView.goBackBlock = ^{
    [weakSelf.navigationController popViewControllerAnimated:YES];
};



代码实现(Masonry)用法
[Objective-C] 查看源文件 复制代码
self.playerView = [[ZFPlayerView alloc] init];
[self.view addSubview:self.playerView];
[self.playerView mas_makeConstraints:^(MASConstraintMaker *make) {
    make.top.equalTo(self.view).offset(20);
    make.left.right.equalTo(self.view);
    // 注意此处,宽高比16:9优先级比1000低就行,在因为iPhone 4S宽高比不是16:9
    make.height.equalTo(self.playerView.mas_width).multipliedBy(9.0f/16.0f).with.priority(750);
}];
self.playerView.videoURL = self.videoURL;
// 返回按钮事件
__weak typeof(self) weakSelf = self;
self.playerView.goBackBlock = ^{
    [weakSelf.navigationController popViewControllerAnimated:YES];
};


设置视频的填充模式(可选设置)
[Objective-C] 查看源文件 复制代码
 // (可选设置)可以设置视频的填充模式,内部设置默认(ZFPlayerLayerGravityResizeAspect:等比例填充,直到一个维度到达区域边界)
 self.playerView.playerLayerGravity = ZFPlayerLayerGravityResizeAspect;


是否有断点下载功能(可选设置
[Objective-C] 查看源文件 复制代码
 // 默认是关闭断点下载功能,如需要此功能设置这里
 self.playerView.hasDownload = YES;



从xx秒开始播放视频(可选设置)
[Objective-C] 查看源文件 复制代码
 // 如果想从xx秒开始播放视频
 self.playerView.seekTime = 15;




已知bug:
  • 下载视频有一定的崩溃率,目前还没有找到原因,大家一块帮忙解决一下呀,谢谢!
图片效果演示

相关源码推荐:

我来说两句
*滑动验证:
所有评论(517)
用户9817419743 2016-3-8 10:32:36
无法下载~
回复
lishikeng 2016-3-8 11:01:43
已修复
回复
uLYmxwT1 2016-3-8 18:18:45
下载下来报错  能否弄一个支持pod导入的?
回复
seven 2016-3-8 14:38:45
能否弄一个支持pod导入的?
回复
喔for右 2016-3-10 17:28:23
我按照你的例子,使用纯代码运行报错,能否告诉为何会出现这样的的问题?
[ZFPlayerMaskView mas_makeConstraints:]: unrecognized selector sent to instance 0x7fb94bb14fd0'
回复
阿大木木 2016-3-17 09:57:13
@Seven:关闭现在的工作空间,删掉以前的xcworkspace,然后重新pod install,install完后,重新打开项目,clean+build项目,运行
回复
boy小欣 2016-3-11 13:03:26
楼主你好,请问6p横屏打开的时候怎么怎么让他竖屏
回复
兜风的小强 2016-3-17 15:05:31
### Error

```
NoMethodError - undefined method `to_ary' for #<od::Specification name="Masonry">
回复
boy小欣 2016-3-11 13:04:13
楼主你好,请问在6p横屏启动的情况下怎么让他竖屏?
回复
提取码:  下载次数:460 状态:已购或VIP 售价:0(原价:10)金钱 下载权限:初级码农 
12832 1 460
联系我们
首页/微信公众账号投稿

帖子代码编辑/版权问题

QQ:435399051,742864542

如何获得代码达人称号?

代码贡献英雄榜
用户名 下载数
通过邮件订阅最新 Code4App 信息
上一条 /4 下一条
联系我们
关闭
合作电话:
13802416937
Email:
435399051@qq.com
商务市场合作/投稿
问题反馈及帮助
联系我们

广告投放| Github|申请友链|手机版|Code4App ( 粤ICP备15117877号-1 )

快速回复 返回顶部 返回列表