Skip to content

Commit 00c62ab

Browse files
committed
非cell播放分辨率bug
1 parent 2d51343 commit 00c62ab

File tree

9 files changed

+47
-55
lines changed

9 files changed

+47
-55
lines changed

Player/PlayerViewController/MoviePlayerViewController.m

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -122,6 +122,8 @@ - (ZFPlayerModel *)playerModel {
122122
_playerModel.videoURL = self.videoURL;
123123
_playerModel.placeholderImage = [UIImage imageNamed:@"loading_bgView1"];
124124
_playerModel.fatherView = self.playerFatherView;
125+
// _playerModel.resolutionDic = @{@"高清" : self.videoURL.absoluteString,
126+
// @"标清" : self.videoURL.absoluteString};
125127
}
126128
return _playerModel;
127129
}

ZFPlayer/Category/UITabBarController+ZFPlayerRotation.m

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,7 @@
2626

2727
@implementation UITabBarController (ZFPlayerRotation)
2828

29-
+ (void)load
30-
{
29+
+ (void)load {
3130
SEL selectors[] = {
3231
@selector(selectedIndex)
3332
};
@@ -45,8 +44,7 @@ + (void)load
4544
}
4645
}
4746

48-
- (NSInteger)zf_selectedIndex
49-
{
47+
- (NSInteger)zf_selectedIndex {
5048
NSInteger index = [self zf_selectedIndex];
5149
if (index > self.viewControllers.count) { return 0; }
5250
return index;
@@ -58,8 +56,7 @@ - (NSInteger)zf_selectedIndex
5856
*/
5957

6058
// 是否支持自动转屏
61-
- (BOOL)shouldAutorotate
62-
{
59+
- (BOOL)shouldAutorotate {
6360
UIViewController *vc = self.viewControllers[self.selectedIndex];
6461
if ([vc isKindOfClass:[UINavigationController class]]) {
6562
UINavigationController *nav = (UINavigationController *)vc;
@@ -70,8 +67,7 @@ - (BOOL)shouldAutorotate
7067
}
7168

7269
// 支持哪些屏幕方向
73-
- (UIInterfaceOrientationMask)supportedInterfaceOrientations
74-
{
70+
- (UIInterfaceOrientationMask)supportedInterfaceOrientations {
7571
UIViewController *vc = self.viewControllers[self.selectedIndex];
7672
if ([vc isKindOfClass:[UINavigationController class]]) {
7773
UINavigationController *nav = (UINavigationController *)vc;

ZFPlayer/Category/UIView+CustomControlView.m

Lines changed: 24 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -26,92 +26,90 @@
2626

2727
@implementation UIView (CustomControlView)
2828

29-
- (void)setDelegate:(id<ZFPlayerControlViewDelagate>)delegate
30-
{
29+
- (void)setDelegate:(id<ZFPlayerControlViewDelagate>)delegate {
3130
objc_setAssociatedObject(self, @selector(delegate), delegate, OBJC_ASSOCIATION_ASSIGN);
3231
}
3332

34-
- (id<ZFPlayerControlViewDelagate>)delegate
35-
{
33+
- (id<ZFPlayerControlViewDelagate>)delegate {
3634
return objc_getAssociatedObject(self, _cmd);
3735
}
3836

3937
/**
4038
* 设置播放模型
4139
*/
42-
- (void)zf_playerModel:(ZFPlayerModel *)playerModel{}
40+
- (void)zf_playerModel:(ZFPlayerModel *)playerModel {}
4341

4442
/**
4543
* 显示top、bottom、lockBtn
4644
*/
47-
- (void)zf_playerShowControlView{}
45+
- (void)zf_playerShowControlView {}
4846
/**
4947
* 隐藏top、bottom、lockBtn*/
50-
- (void)zf_playerHideControlView{}
48+
- (void)zf_playerHideControlView {}
5149

5250
/**
5351
* 重置ControlView
5452
*/
55-
- (void)zf_playerResetControlView{}
53+
- (void)zf_playerResetControlView {}
5654

5755
/**
5856
* 切换分辨率时候调用此方法
5957
*/
60-
- (void)zf_playerResetControlViewForResolution{}
58+
- (void)zf_playerResetControlViewForResolution {}
6159

6260
/**
6361
* 取消自动隐藏控制层view
6462
*/
65-
- (void)zf_playerCancelAutoFadeOutControlView{}
63+
- (void)zf_playerCancelAutoFadeOutControlView {}
6664

6765
/**
6866
* 开始播放(隐藏placeholderImageView)
6967
*/
70-
- (void)zf_playerItemPlaying{}
68+
- (void)zf_playerItemPlaying {}
7169

7270
/**
7371
* 播放完了
7472
*/
75-
- (void)zf_playerPlayEnd{}
73+
- (void)zf_playerPlayEnd {}
7674

7775
/**
7876
* 是否有下载功能
7977
*/
80-
- (void)zf_playerHasDownloadFunction:(BOOL)sender{}
78+
- (void)zf_playerHasDownloadFunction:(BOOL)sender {}
8179

8280
/**
8381
* 下载按钮状态
8482
*/
85-
- (void)zf_playerDownloadBtnState:(BOOL)state{}
83+
- (void)zf_playerDownloadBtnState:(BOOL)state {}
8684

8785
/**
8886
* 是否有切换分辨率功能
8987
* @param resolutionArray 分辨率名称的数组
9088
*/
91-
- (void)zf_playerResolutionArray:(NSArray *)resolutionArray{}
89+
- (void)zf_playerResolutionArray:(NSArray *)resolutionArray {}
9290

9391
/**
9492
* 播放按钮状态 (播放、暂停状态)
9593
*/
96-
- (void)zf_playerPlayBtnState:(BOOL)state{}
94+
- (void)zf_playerPlayBtnState:(BOOL)state {}
9795

9896
/**
9997
* 锁定屏幕方向按钮状态
10098
*/
101-
- (void)zf_playerLockBtnState:(BOOL)state{}
99+
- (void)zf_playerLockBtnState:(BOOL)state {}
102100

103101
/**
104102
* 加载的菊花
105103
*/
106-
- (void)zf_playerActivity:(BOOL)animated{}
104+
- (void)zf_playerActivity:(BOOL)animated {}
107105

108106
/**
109107
* 设置预览图
110108
111109
* @param draggedTime 拖拽的时长
112110
* @param image 预览图
113111
*/
114-
- (void)zf_playerDraggedTime:(NSInteger)draggedTime sliderImage:(UIImage *)image{}
112+
- (void)zf_playerDraggedTime:(NSInteger)draggedTime sliderImage:(UIImage *)image {}
115113

116114
/**
117115
* 拖拽快进 快退
@@ -121,12 +119,12 @@ - (void)zf_playerDraggedTime:(NSInteger)draggedTime sliderImage:(UIImage *)image
121119
* @param forawrd 是否是快进
122120
* @param preview 是否有预览图
123121
*/
124-
- (void)zf_playerDraggedTime:(NSInteger)draggedTime totalTime:(NSInteger)totalTime isForward:(BOOL)forawrd hasPreview:(BOOL)preview{}
122+
- (void)zf_playerDraggedTime:(NSInteger)draggedTime totalTime:(NSInteger)totalTime isForward:(BOOL)forawrd hasPreview:(BOOL)preview {}
125123

126124
/**
127125
* 滑动调整进度结束结束
128126
*/
129-
- (void)zf_playerDraggedEnd{}
127+
- (void)zf_playerDraggedEnd {}
130128

131129
/**
132130
* 正常播放
@@ -135,26 +133,26 @@ - (void)zf_playerDraggedEnd{}
135133
* @param totalTime 视频总时长
136134
* @param value slider的value(0.0~1.0)
137135
*/
138-
- (void)zf_playerCurrentTime:(NSInteger)currentTime totalTime:(NSInteger)totalTime sliderValue:(CGFloat)value{}
136+
- (void)zf_playerCurrentTime:(NSInteger)currentTime totalTime:(NSInteger)totalTime sliderValue:(CGFloat)value {}
139137

140138
/**
141139
* progress显示缓冲进度
142140
*/
143-
- (void)zf_playerSetProgress:(CGFloat)progress{}
141+
- (void)zf_playerSetProgress:(CGFloat)progress {}
144142

145143
/**
146144
* 视频加载失败
147145
*/
148-
- (void)zf_playerItemStatusFailed:(NSError *)error{}
146+
- (void)zf_playerItemStatusFailed:(NSError *)error {}
149147

150148
/**
151149
* 小屏播放
152150
*/
153-
- (void)zf_playerBottomShrinkPlay{}
151+
- (void)zf_playerBottomShrinkPlay {}
154152

155153
/**
156154
* 在cell播放
157155
*/
158-
- (void)zf_playerCellPlay{}
156+
- (void)zf_playerCellPlay {}
159157

160158
@end

ZFPlayer/Category/UIViewController+ZFPlayerRotation.m

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -30,20 +30,17 @@ @implementation UIViewController (ZFPlayerRotation)
3030
*/
3131

3232
// 是否支持自动转屏
33-
- (BOOL)shouldAutorotate
34-
{
33+
- (BOOL)shouldAutorotate {
3534
return NO;
3635
}
3736

3837
// 支持哪些屏幕方向
39-
- (UIInterfaceOrientationMask)supportedInterfaceOrientations
40-
{
38+
- (UIInterfaceOrientationMask)supportedInterfaceOrientations {
4139
return UIInterfaceOrientationMaskPortrait;
4240
}
4341

4442
// 默认的屏幕方向(当前ViewController必须是通过模态出来的UIViewController(模态带导航的无效)方式展现出来的,才会调用这个方法)
45-
- (UIInterfaceOrientation)preferredInterfaceOrientationForPresentation
46-
{
43+
- (UIInterfaceOrientation)preferredInterfaceOrientationForPresentation {
4744
return UIInterfaceOrientationPortrait;
4845
}
4946

ZFPlayer/Category/UIWindow+CurrentViewController.m

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,8 @@
2525
#import "UIWindow+CurrentViewController.h"
2626

2727
@implementation UIWindow (CurrentViewController)
28-
- (UIViewController*)zf_topMostController
29-
{
28+
29+
- (UIViewController*)zf_topMostController {
3030
UIViewController *topController = [self rootViewController];
3131

3232
// Getting topMost ViewController
@@ -36,13 +36,13 @@ - (UIViewController*)zf_topMostController
3636
return topController;
3737
}
3838

39-
- (UIViewController*)zf_currentViewController;
40-
{
39+
- (UIViewController*)zf_currentViewController; {
4140
UIViewController *currentViewController = [self zf_topMostController];
4241

4342
while ([currentViewController isKindOfClass:[UINavigationController class]] && [(UINavigationController*)currentViewController topViewController])
4443
currentViewController = [(UINavigationController*)currentViewController topViewController];
4544

4645
return currentViewController;
4746
}
47+
4848
@end

ZFPlayer/ZFPlayerControlView.h

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,10 +25,6 @@
2525
#import "ASValueTrackingSlider.h"
2626
#import "ZFPlayer.h"
2727

28-
typedef void(^ChangeResolutionBlock)(UIButton *button);
29-
typedef void(^SliderTapBlock)(CGFloat value);
30-
3128
@interface ZFPlayerControlView : UIView
3229

33-
3430
@end

ZFPlayer/ZFPlayerControlView.m

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -89,8 +89,6 @@ @interface ZFPlayerControlView () <UIGestureRecognizerDelegate>
8989
/** 分辨率的名称 */
9090
@property (nonatomic, strong) NSArray *resolutionArray;
9191

92-
/** 播放模型 */
93-
@property (nonatomic, strong) ZFPlayerModel *playerModel;
9492
/** 显示控制层 */
9593
@property (nonatomic, assign, getter=isShowing) BOOL showing;
9694
/** 小屏播放 */
@@ -923,7 +921,7 @@ - (void)zf_playerCancelAutoFadeOutControlView {
923921

924922
/** 设置播放模型 */
925923
- (void)zf_playerModel:(ZFPlayerModel *)playerModel {
926-
_playerModel = playerModel;
924+
927925
if (playerModel.title) { self.titleLabel.text = playerModel.title; }
928926
// 设置网络占位图片
929927
if (playerModel.placeholderImageURLString) {

ZFPlayer/ZFPlayerModel.h

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,8 +35,11 @@
3535
* 如果和本地图片同时设置,则忽略本地图片,显示网络图片
3636
*/
3737
@property (nonatomic, copy ) NSString *placeholderImageURLString;
38-
/** 视频分辨率 */
39-
@property (nonatomic, strong) NSDictionary *resolutionDic;
38+
/**
39+
* 视频分辨率字典, 分辨率标题与该分辨率对应的视频URL.
40+
* 例如: @{@"高清" : @"https://xx/xx-hd.mp4", @"标清" : @"https://xx/xx-sd.mp4"}
41+
*/
42+
@property (nonatomic, strong) NSDictionary<NSString *, NSString *> *resolutionDic;
4043
/** 从xx秒开始播放视频(默认0) */
4144
@property (nonatomic, assign) NSInteger seekTime;
4245
// cell播放视频,以下属性必须设置值

ZFPlayer/ZFPlayerView.m

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1277,7 +1277,6 @@ - (void)setHasDownload:(BOOL)hasDownload {
12771277

12781278
- (void)setResolutionDic:(NSDictionary *)resolutionDic {
12791279
_resolutionDic = resolutionDic;
1280-
[self.controlView zf_playerResolutionArray:[resolutionDic allKeys]];
12811280
self.videoURLArray = [resolutionDic allValues];
12821281
}
12831282

@@ -1298,10 +1297,13 @@ - (void)setPlayerModel:(ZFPlayerModel *)playerModel {
12981297

12991298
if (playerModel.seekTime) { self.seekTime = playerModel.seekTime; }
13001299
[self.controlView zf_playerModel:playerModel];
1300+
// 分辨率
1301+
if (playerModel.resolutionDic) {
1302+
self.resolutionDic = playerModel.resolutionDic;
1303+
}
13011304

13021305
if (playerModel.tableView && playerModel.indexPath && playerModel.videoURL) {
13031306
[self cellVideoWithTableView:playerModel.tableView AtIndexPath:playerModel.indexPath];
1304-
if (playerModel.resolutionDic) { self.resolutionDic = playerModel.resolutionDic; }
13051307
}
13061308
[self addPlayerToFatherView:playerModel.fatherView];
13071309
self.videoURL = playerModel.videoURL;

0 commit comments

Comments
 (0)