161 lines
5.4 KiB
Objective-C
161 lines
5.4 KiB
Objective-C
//
|
|
// XPMineUserInfoGiftWallCollectionViewCell.m
|
|
// xplan-ios
|
|
//
|
|
// Created by 冯硕 on 2022/4/14.
|
|
//
|
|
|
|
#import "XPMineUserInfoGiftWallCollectionViewCell.h"
|
|
///Third
|
|
#import <Masonry/Masonry.h>
|
|
///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
|