// // XPMineUserInfoGiftWallCollectionViewCell.m // xplan-ios // // Created by 冯硕 on 2022/4/14. // #import "XPMineUserInfoGiftWallCollectionViewCell.h" ///Third #import ///Tool #import "NetImageView.h" #import "UIView+Corner.h" ///Model #import "UserGiftWallInfoModel.h" @interface XPMineUserInfoGiftWallCollectionViewCell () ///背景 @property (nonatomic,strong) UIView *bgView; ///排名 @property (nonatomic,strong) UIImageView *levelImageView; ///礼物头像 @property (nonatomic,strong) NetImageView *giftImageView; ///礼物个数 @property (nonatomic,strong) UILabel *giftNumberLabel; @property (nonatomic,strong) UILabel *priceView; @end @implementation XPMineUserInfoGiftWallCollectionViewCell - (instancetype)initWithFrame:(CGRect)frame { self = [super initWithFrame:frame]; if (self) { [self initSubViews]; [self initSubViewConstraints]; } return self; } #pragma mark - Private Method - (void)initSubViews { self.backgroundColor = [UIColor clearColor]; [self.contentView addSubview:self.bgView]; [self.bgView addSubview:self.giftImageView]; [self.bgView addSubview:self.priceView]; [self.bgView addSubview:self.giftNumberLabel]; [self.bgView addSubview:self.levelImageView]; } - (void)initSubViewConstraints { [self.bgView mas_makeConstraints:^(MASConstraintMaker *make) { make.edges.equalTo(self.contentView); }]; [self.giftImageView mas_makeConstraints:^(MASConstraintMaker *make) { make.size.mas_equalTo(CGSizeMake(kGetScaleWidth(60.16), kGetScaleWidth(55.58))); make.centerX.mas_equalTo(self.contentView); make.top.mas_equalTo(kGetScaleWidth(5)); }]; [self.giftNumberLabel mas_makeConstraints:^(MASConstraintMaker *make) { make.centerX.mas_equalTo(self.contentView); make.top.mas_equalTo(self.giftImageView.mas_bottom).offset(kGetScaleWidth(5)); make.height.mas_equalTo(kGetScaleWidth(14)); }]; [self.priceView mas_makeConstraints:^(MASConstraintMaker *make) { make.centerX.equalTo(self.bgView); make.top.equalTo(self.giftNumberLabel.mas_bottom).mas_offset(kGetScaleWidth(5)); make.leading.trailing.equalTo(self.bgView).inset(kGetScaleWidth(0)); }]; [self.levelImageView mas_makeConstraints:^(MASConstraintMaker *make) { make.leading.top.mas_equalTo(kGetScaleWidth(3)); make.width.height.mas_equalTo(kGetScaleWidth(19)); }]; } #pragma mark - Getters And Setters -(void)setLevel:(int)level{ self.levelImageView.hidden = YES; if(level == 1){ self.levelImageView.hidden = NO; _levelImageView.image = [UIImage imageNamed:@"gift_list_one"]; }else if(level == 2){ self.levelImageView.hidden = NO; _levelImageView.image = [UIImage imageNamed:@"gift_list_two"]; }else if(level == 3){ self.levelImageView.hidden = NO; _levelImageView.image = [UIImage imageNamed:@"gift_list_three"]; }else{ self.levelImageView.hidden = YES; } } - (void)setGiftInfo:(UserGiftWallInfoModel *)giftInfo { _giftInfo = giftInfo; if (_giftInfo) { _giftImageView.imageUrl = _giftInfo.picUrl; _giftNumberLabel.text = [NSString stringWithFormat:@"X%ld", _giftInfo.reciveCount]; NSMutableAttributedString *textAtt = [[NSMutableAttributedString alloc]initWithString:[NSString stringWithFormat:@" %ld",_giftInfo.giftPrice] attributes:@{NSForegroundColorAttributeName:UIColorFromRGB(0x6D6B89)}]; NSTextAttachment * attachment = [[NSTextAttachment alloc] init]; UIImage *iconImage = [UIImage imageNamed:@"moli_money_icon"];; attachment.bounds = CGRectMake(0, roundf(_priceView.font.capHeight - iconImage.size.height)/2.f, iconImage.size.width, iconImage.size.height); attachment.image = iconImage; [textAtt insertAttributedString:[NSMutableAttributedString attributedStringWithAttachment:attachment] atIndex:0]; _priceView.attributedText = textAtt; } } - (NetImageView *)giftImageView { if (!_giftImageView) { NetImageConfig * config = [[NetImageConfig alloc]init]; config.imageType = ImageTypeUserIcon; config.placeHolder = [UIImageConstant defaultAvatarPlaceholder]; _giftImageView = [[NetImageView alloc] initWithConfig:config]; } return _giftImageView; } - (UILabel *)giftNumberLabel { if (!_giftNumberLabel) { _giftNumberLabel = [[UILabel alloc] init]; _giftNumberLabel.font = [UIFont systemFontOfSize:kGetScaleWidth(10) weight:UIFontWeightRegular]; _giftNumberLabel.textColor = UIColorFromRGB(0x6D6B89); _giftNumberLabel.textAlignment = NSTextAlignmentCenter; } return _giftNumberLabel; } - (UIView *)bgView{ if (!_bgView){ _bgView = [UIView new]; _bgView.backgroundColor = UIColorFromRGB(0xF3F5FA); _bgView.layer.cornerRadius = kGetScaleWidth(8); _bgView.layer.masksToBounds = YES; } return _bgView; } - (UIImageView *)levelImageView{ if (!_levelImageView){ _levelImageView = [UIImageView new]; _levelImageView.hidden = NO; } return _levelImageView; } - (UILabel *)priceView{ if (!_priceView){ _priceView = [UILabel new]; _priceView.textAlignment = NSTextAlignmentCenter; _priceView.font = [UIFont systemFontOfSize:kGetScaleWidth(10) weight:UIFontWeightRegular]; } return _priceView; } @end