// // XPRoomFaceCollectionViewCell.m // xplan-ios // // Created by 冯硕 on 2022/3/9. // #import "XPRoomFaceCollectionViewCell.h" ///Third #import ///Tool #import "NetImageView.h" #import "ThemeColor.h" ///Model #import "RoomFaceInfoModel.h" @interface XPRoomFaceCollectionViewCell () ///表情的图片 @property (nonatomic,strong) UIImageView *faceImageView; ///表情的标题 @property (nonatomic,strong) UILabel *faceTitleLabel; ///贵族的类型 @property (nonatomic,strong) NetImageView *nobleTypeImageView; ///是否是贵族🔐 @property (nonatomic,strong) UIImageView *nobleLockImageView; ///覆盖的背景 @property (nonatomic,strong) UIView * coverView; @end @implementation XPRoomFaceCollectionViewCell - (instancetype)initWithFrame:(CGRect)frame { self = [super initWithFrame:frame]; if (self) { [self initSubViews]; [self initSubViewConstraints]; } return self; } #pragma mark - Private Method - (void)initSubViews { [self.contentView addSubview:self.faceImageView]; [self.contentView addSubview:self.coverView]; [self.contentView addSubview:self.nobleTypeImageView]; [self.contentView addSubview:self.faceTitleLabel]; [self.contentView addSubview:self.nobleLockImageView]; } - (void)initSubViewConstraints { [self.faceImageView mas_makeConstraints:^(MASConstraintMaker *make) { make.size.mas_equalTo(CGSizeMake(60, 60)); make.centerX.mas_equalTo(self.contentView); make.top.mas_equalTo(self.contentView); }]; [self.coverView mas_makeConstraints:^(MASConstraintMaker *make) { make.edges.mas_equalTo(self.faceImageView); }]; [self.nobleTypeImageView mas_makeConstraints:^(MASConstraintMaker *make) { make.width.mas_equalTo(12 * 1.4); make.height.mas_equalTo(10 * 1.4); make.left.top.mas_equalTo(self.contentView); }]; [self.faceTitleLabel mas_makeConstraints:^(MASConstraintMaker *make) { make.left.right.mas_equalTo(self.contentView); make.top.mas_equalTo(self.faceImageView.mas_bottom).offset(4); }]; [self.nobleLockImageView mas_makeConstraints:^(MASConstraintMaker *make) { make.size.mas_equalTo(CGSizeMake(11, 11)); make.bottom.right.mas_equalTo(self.faceImageView); }]; } #pragma mark - Getters And Setters - (void)setFaceInfo:(RoomFaceInfoModel *)faceInfo { _faceInfo = faceInfo; if (_faceInfo) { self.faceImageView.image = _faceInfo.faceImage; self.faceTitleLabel.text = _faceInfo.name; if (_faceInfo.faceVipInfo) { self.nobleTypeImageView.imageUrl = _faceInfo.faceVipInfo.vipIcon; self.nobleTypeImageView.hidden = NO; if (_faceInfo.faceVipInfo.vipLevel < self.vipLevel) { self.nobleLockImageView.hidden = YES; } else { self.nobleLockImageView.hidden = NO; } } else { self.nobleTypeImageView.hidden = YES; self.nobleLockImageView.hidden = YES; } } } - (UIImageView *)faceImageView { if (!_faceImageView) { _faceImageView = [[UIImageView alloc] init]; _faceImageView.userInteractionEnabled = YES; } return _faceImageView; } - (NetImageView *)nobleTypeImageView { if (!_nobleTypeImageView) { _nobleTypeImageView = [[NetImageView alloc] init]; _nobleTypeImageView.layer.masksToBounds = YES; _nobleTypeImageView.contentMode = UIViewContentModeScaleAspectFit; } return _nobleTypeImageView; } - (UIImageView *)nobleLockImageView { if (!_nobleLockImageView) { _nobleLockImageView = [[UIImageView alloc] init]; _nobleLockImageView.image = [UIImage imageNamed:@"room_face_nobel_lock"]; } return _nobleLockImageView; } - (UILabel *)faceTitleLabel { if (!_faceTitleLabel) { _faceTitleLabel = [[UILabel alloc] init]; _faceTitleLabel.font = [UIFont systemFontOfSize:10]; _faceTitleLabel.textColor = [UIColor whiteColor]; _faceTitleLabel.textAlignment = NSTextAlignmentCenter; } return _faceTitleLabel; } - (UIView *)coverView { if (!_coverView) { _coverView = [[UIView alloc] init]; _coverView.backgroundColor = UIColorRGBAlpha(0x000000, 0.3); } return _coverView; } @end