// // YMAccountBalancePayMethodCell.m // MSYOUPAI // // Created by YoMi on 2024/2/28. // Copyright © 2024 MS. All rights reserved. // #import "YMAccountBalancePayMethodCell.h" #import "YMPayMethodCellViewModel.h" @interface YMAccountBalancePayMethodCell() /// ViewModel @property (nonatomic, strong) YMPayMethodCellViewModel *viewModel; /// 基础视图 @property (nonatomic, strong) UIView *baseView; /// 支付方式图标 @property (nonatomic, strong) UIImageView *payMethodIcon; /// 支付方式标题标签 @property (nonatomic, strong) UILabel *payMethodTitleLb; /// 选中图标 @property (nonatomic, strong) UIImageView *selectedIcon; @end @implementation YMAccountBalancePayMethodCell - (void)setSelected:(BOOL)selected animated:(BOOL)animated { [super setSelected:selected animated:animated]; if (selected) { self.selectedIcon.image = ImageByName(@"ym_member_center_pay_selected_icon"); } else { self.selectedIcon.image = ImageByName(@"ym_member_center_pay_normal_icon"); } } - (void)ym_setupViews{ self.contentView.backgroundColor = UIColor.clearColor; self.backgroundColor = UIColor.clearColor; [self.contentView addSubview:self.baseView]; [self.baseView addSubview:self.payMethodIcon]; [self.baseView addSubview:self.payMethodTitleLb]; [self.baseView addSubview:self.selectedIcon]; [self setNeedsUpdateConstraints]; [self updateConstraintsIfNeeded]; } - (void)updateConstraints { [self.baseView mas_makeConstraints:^(MASConstraintMaker *make) { make.top.equalTo(self.contentView); make.left.equalTo(self.contentView); make.right.equalTo(self.contentView); make.bottom.equalTo(self.contentView); }]; [self.payMethodIcon mas_makeConstraints:^(MASConstraintMaker *make) { make.centerY.equalTo(self.baseView.mas_centerY); make.left.equalTo(self.baseView).offset(adapt(15)); make.width.height.mas_equalTo(adapt(18)); }]; [self.payMethodTitleLb mas_makeConstraints:^(MASConstraintMaker *make) { make.centerY.equalTo(self.baseView.mas_centerY); make.left.equalTo(self.payMethodIcon.mas_right).offset(adapt(10)); }]; [self.selectedIcon mas_makeConstraints:^(MASConstraintMaker *make) { make.centerY.equalTo(self.baseView.mas_centerY); make.right.equalTo(self.baseView).offset(adapt(-15)); make.width.height.mas_equalTo(adapt(20)); }]; [super updateConstraints]; } - (void)ym_bindViewModel:(YMPayMethodCellViewModel*)viewModel{ if (!viewModel) { return; } _viewModel = viewModel; self.payMethodIcon.image = ImageByName(self.viewModel.payIcon); self.payMethodTitleLb.text = self.viewModel.payTitle; } - (UIView *)baseView{ if (!_baseView) { _baseView = [[UIView alloc]init]; _baseView.backgroundColor = HexColorFromRGB(0xf6f6f6); _baseView.layer.cornerRadius = adapt(8); _baseView.layer.masksToBounds = YES; } return _baseView; } - (UIImageView *)payMethodIcon{ if (!_payMethodIcon) { _payMethodIcon = [[UIImageView alloc]init]; } return _payMethodIcon; } - (UILabel *)payMethodTitleLb{ if (!_payMethodTitleLb) { _payMethodTitleLb = [[UILabel alloc]init]; _payMethodTitleLb.font = LCFont(14); _payMethodTitleLb.textColor = HexColorFromRGB(0x333333); _payMethodTitleLb.textAlignment = NSTextAlignmentLeft; _payMethodTitleLb.text = @"******"; } return _payMethodTitleLb; } - (UIImageView *)selectedIcon{ if (!_selectedIcon) { _selectedIcon = [[UIImageView alloc]init]; _selectedIcon.image = ImageByName(@"ym_member_center_pay_normal_icon"); } return _selectedIcon; } @end