123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- //
- // RQPlaceListCell.m
- // JiaPei
- //
- // Created by 张嵘 on 2023/4/13.
- //
- #import "RQPlaceListCell.h"
- @interface RQPlaceListCell ()
- @property (nonatomic, readwrite, strong) RQPlaceListItemViewModel *viewModel;
- @property (weak, nonatomic) IBOutlet UIImageView *myBottomImageView;
- @property (weak, nonatomic) IBOutlet UIImageView *myPlaceImageVIew;
- @property (weak, nonatomic) IBOutlet UILabel *myPlaceLabel;
- @property (weak, nonatomic) IBOutlet UILabel *myTotalLabel;
- @property (weak, nonatomic) IBOutlet QMUIButton *buyBtn;
- @end
- @implementation RQPlaceListCell
- #pragma mark - PublicMethods
- + (instancetype)cellWithTableView:(UITableView *)tableView {
- static NSString *ID = @"RQPlaceListCell";
- RQPlaceListCell *cell = [tableView dequeueReusableCellWithIdentifier:ID];
- if (!cell) {
- cell = [self rq_viewFromXib];
- cell.selectionStyle = UITableViewCellSelectionStyleNone;
- }
- return cell;
- }
- - (void)bindViewModel:(RQPlaceListItemViewModel *)viewModel {
- // @weakify(self)
- _viewModel = viewModel;
- NSString *cityStr = viewModel.placeListModel.city;
- NSString *nameStr = viewModel.placeListModel.name;
- NSString *videoCountStr = [NSString qmui_stringWithNSInteger:viewModel.placeListModel.videoCount];
- if (RQStringIsNotEmpty(cityStr) && RQStringIsNotEmpty(nameStr)) {
- self.myPlaceLabel.text = [NSString stringWithFormat:@"%@ | %@",cityStr, nameStr];
- } else {
- if (RQStringIsNotEmpty(cityStr)) {
- self.myPlaceLabel.text = [NSString stringWithFormat:@"%@",cityStr];
- } else if (RQStringIsNotEmpty(nameStr)) {
- self.myPlaceLabel.text = [NSString stringWithFormat:@"%@", nameStr];
- } else {
- self.myPlaceLabel.text = @"";
- }
- }
- self.myTotalLabel.text = [NSString stringWithFormat:@"共%@节",videoCountStr];
- [self.myPlaceImageVIew yy_setImageWithURL:[NSURL URLWithString:viewModel.placeListModel.image] placeholder:RQWebImagePlaceholder() options:RQWebImageOptionAutomatic completion:nil];
- self.myBottomImageView.hidden = viewModel.isLast;
- RAC(self.buyBtn, hidden) = [[[RACObserve(viewModel.placeListModel, isCheckVip) deliverOnMainThread] takeUntil:self.rac_prepareForReuseSignal] map:^id _Nullable(id _Nullable value) {
- return @(!viewModel.placeListModel.isCheckVip);
- }];
- }
- #pragma mark - SystemMethods
- - (void)awakeFromNib {
- [super awakeFromNib];
- }
- - (void)setSelected:(BOOL)selected animated:(BOOL)animated {
- [super setSelected:selected animated:animated];
- // Configure the view for the selected state
- }
- @end
|