// // RQPlaceDetailDescribeViewController.m // JiaPei // // Created by 张嵘 on 2023/4/17. // #import "RQPlaceDetailDescribeViewController.h" @interface RQPlaceDetailDescribeViewController () /// viewModel @property (nonatomic, readonly, strong) RQPlaceDetailDescribeViewModel *viewModel; @end @implementation RQPlaceDetailDescribeViewController @dynamic viewModel; - (void)viewDidLoad { [super viewDidLoad]; self.tableView.backgroundColor = UIColor.whiteColor; } #pragma mark - OverrideMethods /// 配置tableView的区域 - (UIEdgeInsets)contentInset { return UIEdgeInsetsMake(10, 0, RQ_APPLICATION_SAFEAREA_BOTTOM_HEIGHT, 0); } - (UITableViewCell *)tableView:(UITableView *)tableView dequeueReusableCellWithIdentifier:(NSString *)identifier forIndexPath:(NSIndexPath *)indexPath { RQCommonGroupViewModel *groupViewModel = self.viewModel.dataSource[indexPath.section]; RQCommonItemViewModel *itemViewModel = groupViewModel.itemViewModels[indexPath.row]; return [NSClassFromString(itemViewModel.itemClassName) cellWithTableView:tableView]; } - (void)configureCell:(RQCommonCell *)cell atIndexPath:(NSIndexPath *)indexPath withObject:(id)object { [cell bindViewModel:object]; } #pragma mark - UITableViewDelegate & UITableViewDataSource - (void)scrollViewDidScroll:(UIScrollView *)scrollView { !self.scrollCallback ?: self.scrollCallback(scrollView); } - (UIView *)listView { return self.view; } - (UIScrollView *)listScrollView { return self.tableView; } - (void)listViewDidScrollCallback:(void (^)(UIScrollView *))callback { self.scrollCallback = callback; } @end