LMoviePlayerController是MPMoviePlayerController的一个免费的替代品,它可以显示UI界面,还可以自己定制UI元素。
预览
ALMoviePlayerController在iPad,iOS 7.0上的效果
ALMoviePlayerController在iPhone,iOS6.1上的效果
功能
替代MPMoviePlayerController
拥有多种定制化选择
支持重力感应
支持iPhone以及iPad
支持iOS5.0-iOS 7.0
轻量级,稳定,占用内存小
安装
使用Cocoapods
将pod 'ALMoviePlayerController', '~>0.3.0'添加到Podfile中
在你选择的view当中#import
手动操作
1.复制下载的附件中的ALMoviePlayerController文件到工程中去
2.在工程的Build Phases中连接QuartzCore.framework和MediaPlayer.framework
3.在你选择的view当中#import "ALMoviePlayerController.h"
测试环境
ALMoviePlayerController在iOS 5.0,5.1,6.0(模拟器)以及iOS6.1,7.0中进行过测试。ALMoviePlayerController需要打开ARC。
使用方法
1.创建一个ALMoviePlayerController视频播放器,然后指定自身作为自己的delegate
2.创建一个ALMoviePlayerControls(你可以自己定制这个control)
3.把这个control指派给播放器
4.这只播放器的contentURL,它会开始播放视频
5.如果设备旋转了方向,如果不是全屏状态下则调整播放器的框架(如果是全屏的状态,旋转会自动进行)
6.接入ALMoviePlayerController delegate方法
代码如下:
设备旋转的情况
if (!self.moviePlayer.isFullscreen) {
[self.moviePlayer setFrame:frame];
//"frame" is whatever the movie player's frame should be at that given moment
}
注意:你必须使用[ALMoviePlayerController setFrame:]来调整框架,而不能使用[ALMoviePlayerController.view setFrame:]
Delegate方法
@required
- (void)moviePlayerWillMoveFromWindow;
@optional
- (void)movieTimedOut;
注意:全屏模式的正常工作需要moviePlayerWillMoveFromWindow。需要使用它将视频播放器添加到view controller的view上(这是因为在转化到全屏的过程中,视频播放器被移动到[[UIApplication sharedApplication] keyWindow]了)。
代码会是像下面的这样子:
- (void)moviePlayerWillMoveFromWindow {
if (![self.view.subviews containsObject:self.moviePlayer.view])
[self.view addSubview:self.moviePlayer.view];
[self.moviePlayer setFrame:frame];
}
Control属性
ALMoviePlayerControls有以下可编辑的属性:
Control类型
联系作者:
Github:alobi https://github.com/alobi
Email:anthony@lobian.co
下载附件: