天天看点

使用AVPlayer自定义支持全屏的播放器(五)—Swift重构版本

很早之前开源了一个简单的视频播放器,由于年久失修,效果惨目忍睹,最近特意花时间对其进行了深度重构。旧版本后期不再维护,新版本使用<code>Swift</code>实现,后续会增加更多功能。不想看文字的请自行下载代码------&gt;&gt;&gt;CLPlayer

1.新版本使用<code>Swift</code>,旧版本使用<code>Objective-C</code>

2.新版本采用自定义转场实现全屏,旧版本使用旋转屏幕

3.新版本不需要手动销毁播放器

4.新版本修复了老版本遗留bug

5.新版本降低了代码耦合性

6.新版本增加了倍数播放,切换填充模式

7.新版本提供更丰富的API

8.新版本适配了iPhone X

9.新版本移除了状态栏相关配置

使用AVPlayer自定义支持全屏的播放器(五)—Swift重构版本
使用AVPlayer自定义支持全屏的播放器(五)—Swift重构版本
使用AVPlayer自定义支持全屏的播放器(五)—Swift重构版本
使用AVPlayer自定义支持全屏的播放器(五)—Swift重构版本

[x] 支持全屏模式、小屏模式

[x] 支持跟随手机自动旋转

[x] 支持本地视频、网络<code>URL</code>

[x] 支持<code>UITableView</code>

[x] 支持<code>UICollectionView</code>

[x] 支持手势改变屏幕的亮度(屏幕左半边)

[x] 支持手势改变音量大小(屏幕右半边)

[x] 支持拖动<code>UISlider</code>快进快退

[x] 支持<code>iPhone X</code>留海屏

[x] 支持倍速播放(<code>0.5X、1.0X、1.25X、1.5X、1.75X、2X</code>)

[x] 支持动态改变播放器的填充模式(<code>适应、拉伸、填充</code>)

[x] 支持<code>cocoapods</code>

项目必须支持全屏,建议将屏幕支持方向交由当前显示的控制器自行管理。

使用AVPlayer自定义支持全屏的播放器(五)—Swift重构版本

<code>UITabBarController</code>

<code>UINavigationController</code>

<code>UIViewController</code>

在对应控制器中重写以下方法

本次重构为<code>Swift</code>第一版,后续会持续更新,定制化开发请自行参考CLPlayer修改 , 如果喜欢,欢迎star。

iOS播放器全屏方案

iOS状态栏

iOS播放器全屏旋转实现

iOS横竖屏旋转解决方案 - Swift

iOS视频旋转探究

iOS屏幕旋转的解决方案

作者:JmoVxia

出处:http://www.cnblogs.com/JmoVxia/

本文版权归作者所有,欢迎转载,但必须给出原文链接,并保留此段声明,否则保留追究法律责任的权利。