// // FBLeftAndRightCell.m // FreedomBoat // // Created by 刘惠萍 on 2019/11/14. // Copyright © 2019 刘惠萍. All rights reserved. // #import "FBLeftAndRightCell.h" @implementation FBLeftAndRightCell #pragma mark 懒加载 - (UIImageView *)iconImg{ if (_iconImg == nil) { _iconImg = [UIImageView new]; _iconImg.widthHeight = XY(W(19),W(19)); } return _iconImg; } - (UILabel *)labelTitle{ if (_labelTitle == nil) { _labelTitle = [UILabel new]; _labelTitle.textColor = COLOR_LABEL; _labelTitle.fontNum = F(15); _labelTitle.numberOfLines = 0; _labelTitle.lineSpace = 0; } return _labelTitle; } - (UILabel *)labelPrice{ if (_labelPrice == nil) { _labelPrice = [UILabel new]; _labelPrice.fontNum = F(11); _labelPrice.numberOfLines = 1; _labelPrice.lineSpace = 0; _labelPrice.textColor = COLOR_DETAIL; } return _labelPrice; } - (UILabel *)labelSubTitle{ if (_labelSubTitle == nil) { _labelSubTitle = [UILabel new]; _labelSubTitle.textColor = COLOR_LABEL; _labelSubTitle.fontNum = F(13); _labelSubTitle.numberOfLines = 1; _labelSubTitle.lineSpace = 0; } return _labelSubTitle; } - (UIImageView *)rightImg{ if (_rightImg == nil) { _rightImg = [UIImageView new]; _rightImg.image = [UIImage imageNamed:IMAGE_ARROW_RIGHT]; _rightImg.widthHeight = XY(W(7),W(13)); } return _rightImg; } #pragma mark 初始化 - (instancetype)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier{ self = [super initWithStyle:style reuseIdentifier:reuseIdentifier]; if (self) { self.contentView.backgroundColor = [UIColor clearColor]; self.backgroundColor = [UIColor clearColor]; self.selectionStyle = UITableViewCellSelectionStyleNone; [self.contentView addSubview:self.iconImg]; [self.contentView addSubview:self.labelTitle]; [self.contentView addSubview:self.labelPrice]; [self.contentView addSubview:self.rightImg]; [self.contentView addSubview:self.labelSubTitle]; [self.contentView addTarget:self action:@selector(cellClick)]; self.clipsToBounds = true; self.contentView.userInteractionEnabled = true; } return self; } #pragma mark 刷新cell - (void)resetCellWithModel:(ModelBaseData *)model{ [self.contentView removeSubViewWithTag:TAG_LINE];//移除线 //刷新view self.model = model; //hide view dequeue self.labelPrice.hidden = true; self.rightImg.hidden = false; self.labelSubTitle.hidden = false; self.rightImg.hidden = false; self.height = W(44); //config data with model [self resetViewGeneral]; } #pragma mark reset general view - (void)resetViewGeneral{ //icon if (self.model.image) { self.iconImg.image = self.model.image; self.iconImg.widthHeight = XY(W(self.model.image.size.width), W(self.model.image.size.height)) ; }else{ self.iconImg.image = [UIImage imageNamed:self.model.imageName]; self.iconImg.widthHeight = XY(W(18),W(17)); } self.iconImg.leftCenterY = XY(W(15),self.height/2); //label [self.labelTitle fitTitle:UnPackStr(self.model.string) variable:0]; self.labelTitle.leftCenterY = self.model.image||self.model.imageName ?XY(W(8)+self.iconImg.right,self.iconImg.centerY):XY(W(15),self.height/2); [self.labelPrice fitTitle:UnPackStr(self.model.alertString) variable:0]; self.labelPrice.leftCenterY = XY(self.labelTitle.right+W(5), self.labelTitle.centerY); self.labelPrice.hidden=self.model.hidelineState; //arrow self.rightImg.rightCenterY = XY(SCREEN_WIDTH-W(15),self.iconImg.centerY); self.rightImg.hidden = self.model.hideSubState; //subtitle [self.labelSubTitle fitTitle:UnPackStr(self.model.subString) variable:self.rightImg.left - W(15) - self.labelPrice.right - W(20)]; self.labelSubTitle.rightCenterY = XY(self.rightImg.left-W(13),self.iconImg.centerY); self.labelSubTitle.hidden=self.model.hideState; } #pragma mark cell click - (void)cellClick{ if (self.model.blockClick) { self.model.blockClick(self.model); } } @end