Skip to content

Commit

Permalink
Release 2.5.3
Browse files Browse the repository at this point in the history
- 资源标题 改为默认一直显示
- 当资源为 otherAsset 时, 显示 otherAsset 的标题
- 修复 LoadingView 挡住`重播item`的问题
  • Loading branch information
changsanjiang committed Mar 29, 2019
1 parent b9b9cd3 commit 58301f9
Show file tree
Hide file tree
Showing 7 changed files with 28 additions and 14 deletions.
3 changes: 1 addition & 2 deletions SJVideoPlayer/Adapters/Core/SJEdgeControlLayerItemAdapter.m
Original file line number Diff line number Diff line change
Expand Up @@ -118,7 +118,6 @@ - (void)_prepareLayout_Vertical {
}
CGFloat content_h = 0; // 内容宽度
CGRect bounds_arr[_items.count]; // 所有内容的bounds

CGFloat width = self.collectionView.bounds.size.width;
NSMutableArray<NSNumber *> *fillIndexes = [NSMutableArray new];
for ( NSInteger i = 0 ; i < _items.count ; ++ i ) {
Expand Down Expand Up @@ -165,7 +164,7 @@ - (void)_prepareLayout_Vertical {
current_y += item.insets.front;
NSIndexPath *indexPath = [NSIndexPath indexPathForItem:i inSection:0];
UICollectionViewLayoutAttributes *attributes = [UICollectionViewLayoutAttributes layoutAttributesForCellWithIndexPath:indexPath];
attributes.frame = (CGRect){(CGPoint){0, current_y}, (CGSize)bounds_arr[i].size};
attributes.frame = (CGRect){CGPointMake(0, current_y), (CGSize)bounds_arr[i].size};
[_layoutAttributes addObject:attributes];
current_y += bounds_arr[i].size.height + item.insets.rear;
}
Expand Down
4 changes: 2 additions & 2 deletions SJVideoPlayer/Common/SJVideoPlayerURLAsset+SJControlAdd.m
Original file line number Diff line number Diff line change
Expand Up @@ -115,8 +115,8 @@ - (void)setAlwaysShowTitle:(BOOL)alwaysShowTitle {
}

- (BOOL)alwaysShowTitle {
NSNumber *num = objc_getAssociatedObject(self, _cmd);
if ( num ) return [num boolValue];
NSNumber *_Nullable num = objc_getAssociatedObject(self, _cmd);
if ( num != nil ) return [num boolValue];
return YES;
}

Expand Down
2 changes: 1 addition & 1 deletion SJVideoPlayer/SJEdgeControlLayer/SJEdgeControlLayer.m
Original file line number Diff line number Diff line change
Expand Up @@ -444,7 +444,7 @@ - (void)_updateTimeLabelFor_BottomAdapterWithCurrentTimeStr:(NSString *)currentT
});
[_bottomAdapter updateContentForItemWithTag:SJEdgeControlLayerBottomItem_CurrentTime];

if ( ![durationStr isEqualToString:durationTimeItem.title.string] ) {
if ( ![durationStr isEqualToString:durationTimeItem.title.string?:@""] ) {
durationTimeItem.title = sj_makeAttributesString(^(SJAttributeWorker * _Nonnull make) {
make.append(durationStr).font([UIFont systemFontOfSize:11]).textColor([UIColor whiteColor]).alignment(NSTextAlignmentCenter);
currentTimeItem.size = durationTimeItem.size = [self _timeLabelMaxWidthByDurationStr:durationStr];
Expand Down
28 changes: 19 additions & 9 deletions SJVideoPlayer/SJVideoPlayer.m
Original file line number Diff line number Diff line change
Expand Up @@ -68,12 +68,13 @@ @implementation SJVideoPlayer {
/// default control layer
BOOL _showMoreItemForTopControlLayer;
NSArray<SJVideoPlayerMoreSetting *> *_Nullable _moreSettings;
_SJEdgeControlButtonItemDelegate *_moreItemDelegate;
_SJEdgeControlButtonItemDelegate *_Nullable _moreItemDelegate;

/// film editing control layer
BOOL _enableFilmEditing;
SJVideoPlayerFilmEditingConfig *_filmEditingConfig;
_SJEdgeControlButtonItemDelegate *_filmEditingItemDelegate;
SJVideoPlayerFilmEditingConfig *_Nullable _filmEditingConfig;
_SJEdgeControlButtonItemDelegate *_Nullable _filmEditingItemDelegate;
SJFilmEditingControlLayer *_Nullable _defaultFilmEditingControlLayer;
}

#ifdef DEBUG
Expand All @@ -95,7 +96,9 @@ - (instancetype)init {
if ( !self ) return nil;
__weak typeof(self) _self = self;
[self.switcher addControlLayerForIdentifier:SJControlLayer_Edge lazyLoading:^id<SJControlLayer> (SJControlLayerIdentifier identifier) {
return _self.defaultEdgeControlLayer;
__strong typeof(_self) self = _self;
if ( !self ) return nil;
return self.defaultEdgeControlLayer;
}];

[self.switcher switchControlLayerForIdentitfier:SJControlLayer_Edge]; // 切换到添加的控制层
Expand Down Expand Up @@ -152,11 +155,15 @@ - (void)_initializeSwitcherObserver {
- (void)_initializePlayStatusObserver {
__weak typeof(self) _self = self;
[self.switcher addControlLayerForIdentifier:SJControlLayer_LoadFailed lazyLoading:^id<SJControlLayer> _Nonnull(SJControlLayerIdentifier identifier) {
return _self.defaultLoadFailedControlLayer;
__strong typeof(_self) self = _self;
if ( !self ) return nil;
return self.defaultLoadFailedControlLayer;
}];

[self.switcher addControlLayerForIdentifier:SJControlLayer_NotReachableAndPlaybackStalled lazyLoading:^id<SJControlLayer> _Nonnull(SJControlLayerIdentifier identifier) {
return _self.defaultNotReachableControlLayer;
__strong typeof(_self) self = _self;
if ( !self ) return nil;
return self.defaultNotReachableControlLayer;
}];

_playStatusObserver = [self getPlayStatusObserver];
Expand Down Expand Up @@ -212,7 +219,6 @@ - (SJEdgeControlLayer *)defaultEdgeControlLayer {
return _defaultEdgeControlLayer;
}

@synthesize defaultFilmEditingControlLayer = _defaultFilmEditingControlLayer;
- (SJFilmEditingControlLayer *)defaultFilmEditingControlLayer {
if ( !_defaultFilmEditingControlLayer ) {
_defaultFilmEditingControlLayer = [SJFilmEditingControlLayer new];
Expand Down Expand Up @@ -430,7 +436,9 @@ - (void)setShowMoreItemForTopControlLayer:(BOOL)showMoreItemForTopControlLayer {
if ( ![self.switcher containsControlLayer:SJControlLayer_MoreSettting] ) {
__weak typeof(self) _self = self;
[self.switcher addControlLayerForIdentifier:SJControlLayer_MoreSettting lazyLoading:^id<SJControlLayer> _Nonnull(SJControlLayerIdentifier identifier) {
return _self.defaultMoreSettingControlLayer;
__strong typeof(_self) self = _self;
if ( !self ) return nil;
return self.defaultMoreSettingControlLayer;
}];
}
}
Expand Down Expand Up @@ -480,7 +488,9 @@ - (void)setEnableFilmEditing:(BOOL)enableFilmEditing {
if ( ![self.switcher containsControlLayer:SJControlLayer_FilmEditing] ) {
__weak typeof(self) _self = self;
[self.switcher addControlLayerForIdentifier:SJControlLayer_FilmEditing lazyLoading:^id<SJControlLayer> _Nonnull(SJControlLayerIdentifier identifier) {
return _self.defaultFilmEditingControlLayer;
__strong typeof(_self) self = _self;
if ( !self ) return nil;
return self.defaultFilmEditingControlLayer;
}];
}
}
Expand Down
4 changes: 4 additions & 0 deletions SJVideoPlayer/Switcher/SJControlLayerSwitcher.m
Original file line number Diff line number Diff line change
Expand Up @@ -110,6 +110,10 @@ - (BOOL)switchToPreviousControlLayer {

- (void)addControlLayerForIdentifier:(SJControlLayerIdentifier)identifier
lazyLoading:(nullable id<SJControlLayer>(^)(SJControlLayerIdentifier identifier))loading {
#ifdef DEBUG
NSParameterAssert(loading);
#endif

[self.map setObject:loading forKey:@(identifier)];
if ( self.currentIdentifier == identifier ) {
[self switchControlLayerForIdentitfier:identifier];
Expand Down
Binary file not shown.
1 change: 1 addition & 0 deletions SJVideoPlayerProject/SJVideoPlayer/ViewController.m
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
#import <Masonry/Masonry.h>
#import <SJRouter/SJRouter.h>
#import "LWZTableSectionShrinker.h"
#import <SJVideoPlayer/SJVideoPlayer.h>
//#import <SJFullscreenPopGesture/UINavigationController+SJVideoPlayerAdd.h>
//#import <SJFullscreenPopGesture/UIViewController+SJVideoPlayerAdd.h>

Expand Down

0 comments on commit 58301f9

Please sign in to comment.