CNMineInfoCell.m 7.92 KB
//
//  CNMineInfoCell.m
//  CNLiveNetAdd
//
//  Created by cnliveJunBo on 2018/3/21.
//  Copyright © 2018年 cnlive. All rights reserved.
//

#import "CNMineInfoCell.h"

@interface CNMineInfoCell()
@property (nonatomic ,strong) UIImageView      *iconImageView;
@property (nonatomic ,strong) QMUILabel        *detailLbl;
@property (nonatomic ,strong) UIImageView      *detailIcon;
@property (nonatomic ,strong) UIView           *lineV;
@property (nonatomic ,strong) UIImageView      *QRCodeImgV;

@end

@implementation CNMineInfoCell

- (instancetype)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier {
    if (self = [super initWithStyle:style reuseIdentifier:reuseIdentifier]) {
        [self initSubView];
        self.selectionStyle = UITableViewCellSelectionStyleGray;
    }
    return self;
}

- (void)initSubView {
    [self.contentView addSubview:self.titleLbl];
    [self.contentView addSubview:self.iconImageView];
    [self.contentView addSubview:self.detailLbl];
    [self.contentView addSubview:self.detailIcon];
    [self.contentView addSubview:self.lineV];
    [self.contentView addSubview:self.QRCodeImgV];
    [self.lineV mas_makeConstraints:^(MASConstraintMaker *make) {
        make.bottom.equalTo(self.contentView);
        make.left.equalTo(self.contentView).offset(10);
        make.right.equalTo(self.contentView).offset(-10);
        make.height.mas_equalTo(1);
    }];
}

- (void)layoutSubviews {
    [super layoutSubviews];
    [self relayoutFrameOfSubViews];
}

- (void)setModel:(CNUserInfoModel *)model {
    _model = model;
    self.iconImageView.hidden = YES;
    self.detailLbl.hidden = YES;
    self.lineV.hidden = YES;
    self.QRCodeImgV.hidden = YES;
    [self.titleLbl mas_makeConstraints:^(MASConstraintMaker *make) {
        make.left.equalTo(self.contentView).offset(20);
        make.centerY.mas_equalTo(self.mas_centerY);
        make.width.mas_equalTo(65*RATIO);
    }];
    [self.detailIcon mas_makeConstraints:^(MASConstraintMaker *make) {
        make.centerY.mas_equalTo(self.mas_centerY);
        make.right.equalTo(self.contentView).offset(-10);
    }];
    switch (_type) {
        case MineInfoCellTypeIcon:
        {
            self.iconImageView.hidden = NO;
            self.lineV.hidden = NO;
            [self.iconImageView sd_setImageWithURL:[NSURL URLWithString:model.faceUrl] placeholderImage:kCNLiveDefaultUserCircleIcon];
            [self.iconImageView mas_makeConstraints:^(MASConstraintMaker *make) {
                make.top.equalTo(self.contentView).offset(10);
                make.right.equalTo(self.contentView).offset(-33);
                make.width.height.mas_equalTo(60);
            }];
        }
            break;
        case MineInfoCellTypeNick:
        {
            self.detailLbl.hidden = NO;
            self.lineV.hidden = NO;
            self.detailLbl.text = model.nickname ? model.nickname : @"普通用户";
            [self.detailLbl mas_makeConstraints:^(MASConstraintMaker *make) {
                make.centerY.mas_equalTo(self.mas_centerY);
                make.right.equalTo(self.contentView).offset(-33);
                make.left.equalTo(self.titleLbl.mas_right).offset(10);
            }];
        }
            break;
        case MineInfoCellTypeSex:
        {
            self.detailLbl.hidden = NO;
            if ([model.gender isEqualToString:@"m"]) {
                self.detailLbl.text = @"男";
            } else if ([model.gender isEqualToString:@"f"]) {
                self.detailLbl.text = @"女";
            } else {
                self.detailLbl.text = @"男";
            }
            [self.detailLbl mas_makeConstraints:^(MASConstraintMaker *make) {
                make.centerY.mas_equalTo(self.mas_centerY);
                make.right.equalTo(self.contentView).offset(-33);
                make.left.equalTo(self.titleLbl.mas_right).offset(10);
            }];
        }
            break;
        case MineInfoCellTypeQR_code:
        {
            self.lineV.hidden = NO;
            self.QRCodeImgV.hidden = NO;
            [self.QRCodeImgV mas_makeConstraints:^(MASConstraintMaker *make) {
                make.centerY.equalTo(self.contentView);
                make.right.equalTo(self.contentView).offset(-33);
                make.width.mas_equalTo(17);
                make.height.mas_equalTo(17);
            }];
        }
            break;
        case MineInfoCellTypeLocation:
        {
            self.detailLbl.hidden = NO;
            self.lineV.hidden = NO;
            self.detailLbl.text = [NSString isEmpty:model.location] ? @"中国" : model.location;
            [self.detailLbl mas_makeConstraints:^(MASConstraintMaker *make) {
                make.centerY.mas_equalTo(self.mas_centerY);
                make.right.equalTo(self.contentView).offset(-33);
                make.left.equalTo(self.titleLbl.mas_right).offset(10);
            }];
        }
            break;
        case MineInfoCellTypeAddress:
        {
            self.detailLbl.hidden = NO;
            NSLog(@"%@",model.extInfo);
            self.detailLbl.text = [NSString isEmpty:model.address] ? @"填写详细地址和门牌号" : model.address;
            [self.detailLbl mas_makeConstraints:^(MASConstraintMaker *make) {
                make.centerY.mas_equalTo(self.mas_centerY);
                make.right.equalTo(self.contentView).offset(-33);
                make.left.equalTo(self.titleLbl.mas_right).offset(10);
            }];
        }
            break;
        case MineInfoCellTypeSignature:
        {
            self.detailLbl.hidden = NO;
            self.lineV.hidden = NO;
            NSString *signature = model.signature;
            if (signature) {
                signature = [signature stringByReplacingOccurrencesOfString:@"\n" withString:@""];
            }
            self.detailLbl.text = model.signature ? signature : @"懒到没签名";
            [self.detailLbl mas_makeConstraints:^(MASConstraintMaker *make) {
                make.centerY.mas_equalTo(self.mas_centerY);
                make.right.equalTo(self.contentView).offset(-33);
                make.left.equalTo(self.titleLbl.mas_right).offset(10);
            }];
           
        }
            break;
        default:
            break;
    }
    
}

#pragma mark - subViews
- (QMUILabel *)titleLbl {
    if (!_titleLbl) {
        QMUILabel* label = [[QMUILabel alloc]init];
        label.textColor = RGB(40, 40, 40);
        label.font = UIFontCNMake(15);//[UIFont systemFontOfSize:15.0f];
        _titleLbl = label;
    }
    return _titleLbl;
}

- (UIImageView *)iconImageView {
    if (!_iconImageView) {
        _iconImageView = [UIImageView new];
        _iconImageView.contentMode = UIViewContentModeScaleAspectFit;
        _iconImageView.clipsToBounds = YES;
    }
    return _iconImageView;
}

- (QMUILabel *)detailLbl {
    if (!_detailLbl) {
        _detailLbl = [[QMUILabel alloc]init];
        _detailLbl.font = UIFontCNMake(15);
        _detailLbl.textColor = RGB(166, 166, 166);
        _detailLbl.textAlignment = NSTextAlignmentRight;
    }
    return _detailLbl;
}

- (UIImageView *)detailIcon {
    if (!_detailIcon) {
        _detailIcon = [UIImageView new];
        _detailIcon.image = [UIImage imageNamed:@"mine_more"];
    }
    return _detailIcon;
}

- (UIView *)lineV {
    if (!_lineV) {
        _lineV = [[UIView alloc] init];
        _lineV.backgroundColor = RGB(242, 242, 242);
    }
    return _lineV;
}

- (UIImageView *)QRCodeImgV {
    if (!_QRCodeImgV) {
        _QRCodeImgV = [[UIImageView alloc] init];
        _QRCodeImgV.backgroundColor = [UIColor whiteColor];
        _QRCodeImgV.contentMode = UIViewContentModeScaleAspectFill;
        _QRCodeImgV.clipsToBounds = YES;
        _QRCodeImgV.image = [UIImage imageNamed:@"c_mine_grzx_erweima"];
    }
    return _QRCodeImgV;
}

- (void)awakeFromNib {
    [super awakeFromNib];
    // Initialization code
}

- (void)setSelected:(BOOL)selected animated:(BOOL)animated {
    [super setSelected:selected animated:animated];

    // Configure the view for the selected state
}

@end