initial commit

This commit is contained in:
Caleb
2026-03-01 15:59:27 +08:00
commit a9e97d56cb
1426 changed files with 172367 additions and 0 deletions

View File

@@ -0,0 +1,78 @@
//
// SCLiveItemContainerView.m
// SellyCloudSDK_Example
//
// Created by Caleb on 21/7/25.
// Copyright © 2025 Caleb. All rights reserved.
//
#import "SCLiveItemContainerView.h"
#import "SCLiveItemView.h"
@interface SCLiveItemContainerView ()
@property (nonatomic, strong)NSMutableArray<SCLiveItemView *> *itemViews;
@property (nonatomic, strong)UIVisualEffectView *blurView;
@end
@implementation SCLiveItemContainerView
- (instancetype)init
{
self = [super init];
if (self) {
// 使
UIBlurEffect *blurEffect = [UIBlurEffect effectWithStyle:UIBlurEffectStyleDark];
_blurView = [[UIVisualEffectView alloc] initWithEffect:blurEffect];
_blurView.layer.cornerRadius = 20;
_blurView.layer.masksToBounds = YES;
[self addSubview:_blurView];
//
self.layer.cornerRadius = 20;
self.layer.borderWidth = 0.5;
self.layer.borderColor = [[UIColor whiteColor] colorWithAlphaComponent:0.2].CGColor;
}
return self;
}
- (void)layoutSubviews {
[super layoutSubviews];
_blurView.frame = self.bounds;
}
- (void)setModels:(NSArray<SCLiveItemModel *> *)models {
_models = models;
[self.itemViews enumerateObjectsUsingBlock:^(SCLiveItemView * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
[obj removeFromSuperview];
}];
[self.itemViews removeAllObjects];
for (NSInteger i = 0; i<models.count; i++) {
SCLiveItemView *itemView = SCLiveItemView.new;
itemView.model = models[i];
[self.itemViews addObject:itemView];
[self addSubview:itemView];
}
if (self.itemViews.count) {
// 使
[self.itemViews mas_distributeViewsAlongAxis:MASAxisTypeHorizontal
withFixedSpacing:12
leadSpacing:20
tailSpacing:20];
[self.itemViews mas_makeConstraints:^(MASConstraintMaker *make) {
make.height.offset(64);
make.centerY.offset(0);
}];
}
}
- (NSMutableArray<SCLiveItemView *> *)itemViews {
if (!_itemViews) {
_itemViews = NSMutableArray.array;
}
return _itemViews;
}
@end