123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203 |
- //
- // YMInvitationBreakdownListCell.m
- // MSYOUPAI
- //
- // Created by YoMi on 2024/3/14.
- // Copyright © 2024 MS. All rights reserved.
- //
- #import "YMInvitationBreakdownListInvitingEarningsCell.h"
- #import "YMInvitationBreakdownListCellViewModel.h"
- @interface YMInvitationBreakdownListInvitingEarningsCell ()
- /// 邀请明细VM
- @property (nonatomic, strong) YMInvitationBreakdownListCellViewModel *viewModel;
- /// 基础视图
- @property (nonatomic, strong) UIView *baseView;
- /// 用户头像视图
- @property (nonatomic, strong) UIImageView *userAvatarView;
- /// 用户昵称标签
- @property (nonatomic, strong) UILabel *userNicknameLb;
- /// 用户收支明细日期标签
- @property (nonatomic, strong) UILabel *userInvitationEarningsDateLb;
- /// 用户收支明细描述标签
- @property (nonatomic, strong) UILabel *userInvitationEarningsDescLb;
- /// 用户收支明细金额标签
- @property (nonatomic, strong) UILabel *userInvitationEarningsAmountLb;
- @end
- @implementation YMInvitationBreakdownListInvitingEarningsCell
- - (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
- }
- - (void)ym_setupViews{
- [self.contentView addSubview:self.baseView];
- [self.baseView addSubview:self.userAvatarView];
- [self.baseView addSubview:self.userNicknameLb];
- [self.baseView addSubview:self.userInvitationEarningsDateLb];
- [self.baseView addSubview:self.userInvitationEarningsDescLb];
- [self.baseView addSubview:self.userInvitationEarningsAmountLb];
-
- [self setNeedsUpdateConstraints];
- [self updateConstraintsIfNeeded];
- }
- - (void)updateConstraints{
-
- [self.baseView mas_makeConstraints:^(MASConstraintMaker *make) {
- make.top.equalTo(self.contentView).offset(adapt(10));
- make.left.equalTo(self.contentView).offset(adapt(10));
- make.right.equalTo(self.contentView).offset(adapt(-10));
- make.bottom.equalTo(self.contentView);
- }];
-
- [self.userAvatarView mas_makeConstraints:^(MASConstraintMaker *make) {
- make.centerY.equalTo(self.baseView.mas_centerY);
- make.left.equalTo(self.baseView).offset(adapt(12));
- make.width.height.mas_equalTo(adapt(50));
- }];
-
- [self.userNicknameLb mas_makeConstraints:^(MASConstraintMaker *make) {
- make.bottom.equalTo(self.userAvatarView.mas_centerY).offset(adapt(-5));
- make.left.equalTo(self.userAvatarView.mas_right).offset(adapt(8));
- }];
-
- [self.userInvitationEarningsDateLb mas_makeConstraints:^(MASConstraintMaker *make) {
- make.top.equalTo(self.userAvatarView.mas_centerY).offset(adapt(5));
- make.left.equalTo(self.userAvatarView.mas_right).offset(adapt(8));
- }];
-
- [self.userInvitationEarningsDescLb mas_makeConstraints:^(MASConstraintMaker *make) {
- make.centerY.equalTo(self.userNicknameLb.mas_centerY);
- make.left.equalTo(self.userNicknameLb.mas_right).offset(adapt(8));
- make.right.equalTo(self.baseView).offset(adapt(-12));
- }];
-
- [self.userInvitationEarningsAmountLb mas_makeConstraints:^(MASConstraintMaker *make) {
- make.bottom.equalTo(self.userInvitationEarningsDateLb.mas_bottom);
- make.left.equalTo(self.userInvitationEarningsDateLb.mas_right).offset(adapt(8));
- make.right.equalTo(self.baseView).offset(adapt(-12));
- }];
-
- [super updateConstraints];
- }
- - (void)ym_bindViewModel:(YMInvitationBreakdownListCellViewModel *)viewModel{
- if (!viewModel) {
- return;
- }
-
- _viewModel = viewModel;
-
- [self.userAvatarView sd_setImageWithURL:[LCTools getImageUrlWithAddress:self.viewModel.userAvatar]];
- self.userNicknameLb.text = self.viewModel.userNickname;
- self.userInvitationEarningsDateLb.text = self.viewModel.userInvitationEarningsDate;
- self.userInvitationEarningsDescLb.text = self.viewModel.userInvitationEarningsDesc;
- self.userInvitationEarningsAmountLb.attributedText = self.viewModel.userInvitationEarningsAmount;
-
- }
- - (UIView *)baseView{
- if (!_baseView) {
- _baseView = [[UIView alloc]init];
- _baseView.backgroundColor = HexColorFromRGB(0xf6f6f6);
- _baseView.layer.cornerRadius = adapt(10);
- _baseView.layer.masksToBounds = YES;
- }
- return _baseView;
- }
- - (UIImageView *)userAvatarView{
- if (!_userAvatarView) {
- _userAvatarView = [[UIImageView alloc]init];
- _userAvatarView.layer.cornerRadius = adapt(50)/2;
- _userAvatarView.layer.masksToBounds = YES;
- }
- return _userAvatarView;
- }
- - (UILabel *)userNicknameLb{
- if (!_userNicknameLb) {
- _userNicknameLb = [[UILabel alloc]init];
- _userNicknameLb.font = LCFont(16);
- _userNicknameLb.textColor = HexColorFromRGB(0x333333);
- _userNicknameLb.textAlignment = NSTextAlignmentLeft;
- _userNicknameLb.text = @"******";
- /**
- *抗拉伸 setContentHuggingPriority(值越高,越不容易拉伸)
- */
- [_userNicknameLb setContentHuggingPriority:UILayoutPriorityDefaultHigh forAxis:UILayoutConstraintAxisHorizontal];
- /**
- *抗压缩 setContentCompressionResistancePriority(值越高,越不容易压缩)
- **/
- [_userNicknameLb setContentCompressionResistancePriority:UILayoutPriorityDefaultHigh forAxis:UILayoutConstraintAxisHorizontal];
- }
- return _userNicknameLb;
- }
- - (UILabel *)userInvitationEarningsDateLb{
- if (!_userInvitationEarningsDateLb) {
- _userInvitationEarningsDateLb = [[UILabel alloc]init];
- _userInvitationEarningsDateLb.font = LCFont(12);
- _userInvitationEarningsDateLb.textColor = HexColorFromRGB(0x999999);
- _userInvitationEarningsDateLb.textAlignment = NSTextAlignmentLeft;
- _userInvitationEarningsDateLb.text = @"*****";
- /**
- *抗拉伸 setContentHuggingPriority(值越高,越不容易拉伸)
- */
- [_userInvitationEarningsDateLb setContentHuggingPriority:UILayoutPriorityDefaultHigh forAxis:UILayoutConstraintAxisHorizontal];
- /**
- *抗压缩 setContentCompressionResistancePriority(值越高,越不容易压缩)
- **/
- [_userInvitationEarningsDateLb setContentCompressionResistancePriority:UILayoutPriorityDefaultHigh forAxis:UILayoutConstraintAxisHorizontal];
- }
- return _userInvitationEarningsDateLb;
- }
- - (UILabel *)userInvitationEarningsDescLb{
- if (!_userInvitationEarningsDescLb) {
- _userInvitationEarningsDescLb = [[UILabel alloc]init];
- _userInvitationEarningsDescLb.font = LCFont(13);
- _userInvitationEarningsDescLb.textColor = HexColorFromRGB(0x333333);
- _userInvitationEarningsDescLb.textAlignment = NSTextAlignmentRight;
- _userInvitationEarningsDescLb.text = @"*****";
- /**
- *抗拉伸 setContentHuggingPriority(值越高,越不容易拉伸)
- */
- [_userInvitationEarningsDescLb setContentHuggingPriority:UILayoutPriorityDefaultLow forAxis:UILayoutConstraintAxisHorizontal];
- /**
- *抗压缩 setContentCompressionResistancePriority(值越高,越不容易压缩)
- **/
- [_userInvitationEarningsDescLb setContentCompressionResistancePriority:UILayoutPriorityDefaultLow forAxis:UILayoutConstraintAxisHorizontal];
- }
- return _userInvitationEarningsDescLb;
- }
- - (UILabel *)userInvitationEarningsAmountLb{
- if (!_userInvitationEarningsAmountLb) {
- _userInvitationEarningsAmountLb = [[UILabel alloc]init];
- _userInvitationEarningsAmountLb.font = LCFont(16);
- _userInvitationEarningsAmountLb.textColor = HexColorFromRGB(0x333333);
- _userInvitationEarningsAmountLb.textAlignment = NSTextAlignmentRight;
- _userInvitationEarningsAmountLb.text = @"****";
- /**
- *抗拉伸 setContentHuggingPriority(值越高,越不容易拉伸)
- */
- [_userInvitationEarningsAmountLb setContentHuggingPriority:UILayoutPriorityDefaultLow forAxis:UILayoutConstraintAxisHorizontal];
- /**
- *抗压缩 setContentCompressionResistancePriority(值越高,越不容易压缩)
- **/
- [_userInvitationEarningsAmountLb setContentCompressionResistancePriority:UILayoutPriorityDefaultLow forAxis:UILayoutConstraintAxisHorizontal];
- }
- return _userInvitationEarningsAmountLb;
- }
- @end
|