• 这是一个使用简便的视频播放框架,它基于UIView,它可以是一个小窗口,也可以是一个全屏的窗口
  • 简单的方式加载Video框架: 一行代码加载! 一行代码更新!

  • 下载链接 : https://github.com/huyp/YVideoPlayer

功能

  • 支持本地视频&网络视频
  • 开始&暂停
  • 最大化&还原
  • 图像左侧上下调节 : 亮度
  • 图像右侧上下调节 : 音量
  • 左右滑动 : 快进快退

简介

  • 这是一个UIView的子类,它可以加载到你所需要的任何位置.
  • 它可以是一个小窗口,也可以是一个全屏的窗口
  • 支持方向识别,横屏时自动最大化

使用

加载:

导入头文件
#import "YVideoPlayerView.h"
yVideoPlayerView = [YVideoPlayerView initWithVideoName:@"视频名称1" frame:CGRectMake(,,,) path:@"http://videoPath" onViewControll:self];

初始化方法
+ (instancetype)initWithVideoName:(NSString *)name frame:(CGRect)frame path:(NSString *)path onViewControll:(UIViewController *)OnViewController; name : 视频名称
frame : 视频位置
path : 视频路径
onViewController : 加载视频所在的ViewController -> 一般写self

更新:

yVideoPlayerView = [yVideoPlayerView updateVideoWithName:@"视频名称2" path:@"http://videoPath2" onViewController:self];

注意 : 这是一个对象方法
- (instancetype)updateVideoWithName:(NSString *)name path:(NSString *)path onViewController :(UIViewController *)OnViewController; name : 视频名称
path : 视频路径
onViewController : 加载视频所在的ViewController -> 一般写self 这里不用重写frame -- 参照了初始化时

提醒

  • 本框架纯ARC,兼容的系统>=iOS6.0、iPhone\iPad横竖屏
  • 横竖屏需要手机关闭横竖排方向锁定
  • App至少要开启LandScape Left 或 LandScape Right其中的一项. 如App其他页面不能转屏,用代码锁定!
    • 在其他不需要转屏的根视图里写如下代码:

      - (UIInterfaceOrientationMask)supportedInterfaceOrientations {
      return UIInterfaceOrientationMaskPortrait;
      }
    • 在加载YVideoPlayerView的ViewController里写如下代码:
      //只让这个页面转动
      - (BOOL)shouldAutorotate {
      return YES;
      }
      - (UIInterfaceOrientationMask)supportedInterfaceOrientations {
      if (yVideoPlayerView.canOrientationChange == YES) { //刚进入页面是竖屏
      return UIInterfaceOrientationMaskAllButUpsideDown;
      }
      return UIInterfaceOrientationMaskPortrait;
      }

iOS 视频播放 - YVideoPlayer - UIView的更多相关文章

  1. iOS视频播放(AVFoundation)

    iOS视频播放(AVFoundation) 关于iOS平台的音视频处理,苹果官方提供了OC和swift接口的AVFoundation框架,可以进行各种音频播放和剪辑,底层实现使用了GPU加速,编解码效 ...

  2. 在iOS中获取UIView的所有层级结构 相关

    在iOS中获取UIView的所有层级结构 应用场景 在实际 iOS 开发中,很多时候都需要知道某个 UI 控件中包含哪些子控件,并且分清楚它们的层级结构和自个的 frame 以及 bounds ,以便 ...

  3. iOS 让视图UIView单独显示某一侧的边框线

    iOS 让视图UIView 单独显示某一侧的边框线   有时候需要让view显示某一侧的边框线,这时设置layer的border是达不到效果的.在网上查阅资料发现有一个投机取巧的办法,原理是给view ...

  4. iOS: ios视频播放(MPMediaPlayerController,AVPlayer,AVPlayerViewcontroller、ffmpeg-AVPlayer)

    介绍: 和音频播放一样,ios也提供个很多的API.如mediaPlayer.framework下的MPMediaPlayerController.AVFounditon.framework下的AVP ...

  5. iOS 视频播放方式整理

    初衷 多媒体这整个系列的文章自己也准备好开始整理了,先从视频音频最简单也是最常用的播放出发慢慢的往下深究,探索到底层的编码解码等等,这篇文章就从视频的播放这个最简单的说起. iOS的视频播放方式有几种 ...

  6. iOS--UIView和UIWindow用法

    基础 UI(user interface)是用户界面:iOS的应用是由各种各样的UI控件组成 UIWindow就是一个窗口,学的第一个基础类,就是一个容器,可以在容器上放不同的内容,每个app都需要借 ...

  7. iOS学习之UIView

    一.UI编程概述      1.UI的本意是用户界面,是英文User和Interface的缩写.      2.UI设计则是指对软件的人机交互.操作逻辑.界面美观的整体设计.      3.软件设计可 ...

  8. iOS控件——UIView的viewWithTag:(int)findTag方法描述

    UIView拥有一个viewWithTag:(int)findTag方法,调用方式为[MyView viewWithTag:整形数字]该方法返回tag == findTag的控件.ios控件中允许多个 ...

  9. 浅谈iOS视频播放的N种解决方案

    简       注册登录 添加关注 作者 Maru2016.03.22 20:46* 写了4349字,被135人关注,获得了207个喜欢 字数1621 阅读2895 评论43 喜欢159 header ...

随机推荐

  1. Legolas工业自动化平台入门(一)搭建应用

    前两篇给大家介绍了TWaver家族的新面孔--Legolas工业自动化平台,通过两个应用案例钻井平台工程用车和水源地监控系统,相信大家对Legolas已经有了一定程度的了解.这几篇文章,我们会逐步介绍 ...

  2. 【软件分析与挖掘】BOAT: An Experimental Platform for Researchers to Comparatively and Reproducibly Evaluate Bug Localization Techniques

    摘要: 目前有许多的bug定位技术,但是,由于他们基于不同的数据集,而且有些数据集还不是公开的,甚至有些技术只应用于小数据集,不具有通用性,因此,不好比较这些技术之间的优劣. 因此,BOAT应运而生. ...

  3. Netty5 + HTTPS 练习

    本次以<Netty权威指南>第十章里面的例子为基础修改而来 HttpsFileServerHandler.java package com.jieli.nettytest.httpsfil ...

  4. Linux下U盘变成只读

    今天用Ubuntu给同学拷贝数据的时候,突然其中一个文件夹U盘就不能复制和删除了.再windows7下可以删除除修改的那个文件夹之外的数据,但修改的那个文件夹死活删除不掉,只读属性也去不掉.再Ubun ...

  5. JS DOM元素

    // 为element增加一个样式名为newClassName的新样式 function addClass(element, newClassName) { var value = element.c ...

  6. 重识JavaScript 之 数据类型的相互转换

    字符串转换数字 var a = '1'; console.log(+a); console.log(a++); console.log(-a+3); console.log(parseInt(a)); ...

  7. Maven进价:Maven构建系列文章

    Maven:基于Java平台的项目构建.依赖管理和项目信息管理. 1.构建 Maven标准化了构建过程 构建过程:编译.运行单元测试.生成文档.打包和部署 避免重复:设计.编码.文档.构建 2.依赖管 ...

  8. 手机浏览器JS识别

    识别方法:采用Fiddler 抓包工具 侦测手机http链接,抓取http头 查看 工具:Fiddler 1:Fiddler配置 允许远程设备连接,配置端口为默认8888(确保8888端口没有被其他进 ...

  9. cJSON_json包的C语言解析库

    cJSON库描述 CJSON是一个用于解析JSON包的C语言库,库文件为cJSON.c和cJSON.h, 所有的实现都在这两个文件中.原作者的地址cJSON. JSON包的解析 例如有一个JSON的数 ...

  10. [操作系统实验lab3]实验报告

    [感受] 这次操作系统实验感觉还是比较难的,除了因为助教老师笔误引发的2个错误外,还有一些关键性的理解的地方感觉还没有很到位,这些天一直在不断地消化.理解Lab3里的内容,到现在感觉比Lab2里面所蕴 ...