// // MewMainHomePartyHeadView.m // xplan-ios // // Created by duoban on 2023/12/20. // #import "MewMainHomePartyHeadView.h" #import "MewMainHomePartyHeadItemView.h" #import "MewMainHomePartyHeadHotView.h" #import @interface MewMainHomePartyHeadView() @property(nonatomic,strong) MewMainHomePartyHeadItemView *mewHeadItemView; @property(nonatomic,strong) MewMainHomePartyHeadHotView *mewHeadHotView; /// 轮播图 @property (nonatomic, strong) SDCycleScrollView *mewCycleScrollView; @property(nonatomic,strong) UILabel *mewTitleView; @end @implementation MewMainHomePartyHeadView -(instancetype)initWithFrame:(CGRect)frame{ self = [super initWithFrame:frame]; if(self){ [self installUI]; [self installConstraints]; } return self; } -(void)installUI{ self.backgroundColor = [UIColor clearColor]; [self addSubview:self.mewHeadItemView]; [self addSubview:self.mewHeadHotView]; [self addSubview:self.mewCycleScrollView]; [self addSubview:self.mewTitleView]; } -(void)installConstraints{ [self.mewHeadItemView mas_makeConstraints:^(MASConstraintMaker *make) { make.height.mas_equalTo(kGetScaleWidth(143)); make.leading.trailing.equalTo(self); make.top.mas_equalTo(10); }]; [self.mewHeadHotView mas_makeConstraints:^(MASConstraintMaker *make) { make.top.equalTo(self.mewHeadItemView.mas_bottom).mas_offset(kGetScaleWidth(12)); make.height.mas_equalTo(kGetScaleWidth(42)); make.leading.trailing.equalTo(self).inset(kGetScaleWidth(15)); }]; [self.mewCycleScrollView mas_makeConstraints:^(MASConstraintMaker *make) { make.top.equalTo(self.mewHeadHotView.mas_bottom).mas_offset(kGetScaleWidth(12)); make.leading.trailing.equalTo(self).inset(kGetScaleWidth(15)); make.height.mas_equalTo(kGetScaleWidth(80)); }]; [self.mewTitleView mas_makeConstraints:^(MASConstraintMaker *make) { make.leading.mas_equalTo(kGetScaleWidth(19)); make.top.equalTo(self.mewCycleScrollView.mas_bottom).mas_offset(kGetScaleWidth(12)); }]; } - (void)setMewMenuList:(NSArray *)mewMenuList{ _mewMenuList = mewMenuList; self.mewHeadItemView.mewMenuList = mewMenuList; } -(void)setMewGiftRecordList:(NSArray *)mewGiftRecordList{ _mewGiftRecordList = mewGiftRecordList; self.mewHeadHotView.mewGiftRecordList = _mewGiftRecordList; } -(void)setMewBannerArray:(NSArray *)mewBannerArray{ _mewBannerArray = mewBannerArray; if (_mewBannerArray.count > 0) { NSMutableArray * list = [NSMutableArray array]; [_mewBannerArray enumerateObjectsUsingBlock:^(MewMainHomeBannerInfoModel * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) { if (obj.bannerPic.length > 0) { [list addObject:obj.bannerPic]; } }]; if (list.count > 0) { self.mewCycleScrollView.imageURLStringsGroup = list; [self.mewCycleScrollView autoScroll]; } } } #pragma mark- MewMainHomePartyHeadItemViewDelegate - (void)mew_clickMainHomeHeadItemViewMenu:(MewMainHomeMenuInfoModel *_Nullable)info{ if(self.delegate && [self.delegate respondsToSelector:@selector(mew_clickMainHomeHeadViewMenu:)]){ [self.delegate mew_clickMainHomeHeadViewMenu:info]; }; } #pragma mark- MewMainHomePartyHeadHotViewDelegate - (void)mew_clickMainHomeHeadHotScrollView:(MewMainHomeGiftRecordModel *_Nullable)model{ if(self.delegate && [self.delegate respondsToSelector:@selector(mew_clickMainHomeHeadScrollView:)]){ [self.delegate mew_clickMainHomeHeadScrollView:model]; } } #pragma mark - SDCycleScrollViewDelegate - (void)cycleScrollView:(SDCycleScrollView *)cycleScrollView didSelectItemAtIndex:(NSInteger)index { MewMainHomeBannerInfoModel * bannerInfo = [self.mewBannerArray safeObjectAtIndex1:index]; if (self.delegate && [self.delegate respondsToSelector:@selector(mewClickBannerAction:)]) { [self.delegate mewClickBannerAction:bannerInfo]; } } #pragma mark - 懒加载 - (MewMainHomePartyHeadItemView *)mewHeadItemView{ if(!_mewHeadItemView){ _mewHeadItemView = [[MewMainHomePartyHeadItemView alloc]initWithFrame:CGRectZero]; _mewHeadItemView.delegate = self; } return _mewHeadItemView; } - (MewMainHomePartyHeadHotView *)mewHeadHotView{ if(!_mewHeadHotView){ _mewHeadHotView = [[MewMainHomePartyHeadHotView alloc]initWithFrame:CGRectZero]; _mewHeadHotView.delegate = self; } return _mewHeadHotView; } - (SDCycleScrollView *)mewCycleScrollView { if (!_mewCycleScrollView) { _mewCycleScrollView = [[SDCycleScrollView alloc] init]; _mewCycleScrollView.backgroundColor = [UIColor clearColor]; _mewCycleScrollView.layer.cornerRadius = kGetScaleWidth(10); _mewCycleScrollView.layer.masksToBounds = YES; _mewCycleScrollView.bannerImageViewContentMode = UIViewContentModeScaleAspectFill; _mewCycleScrollView.delegate = self; _mewCycleScrollView.showPageControl = YES; _mewCycleScrollView.autoScrollTimeInterval = 5.0; _mewCycleScrollView.tag = 9999; } return _mewCycleScrollView; } - (UILabel *)mewTitleView{ if(!_mewTitleView){ _mewTitleView = [UILabel labelInitWithText:@"热门推荐" font:kFontMedium(16) textColor:UIColorFromRGB(0x2B2D33)]; } return _mewTitleView; } @end