tableView demo

@interface YKWithdrawalOfCashViewController ()<UITableViewDelegate,UITableViewDataSource>

@property (nonatomic, strong) UITableView *tableView;//首页列表
@property (nonatomic, strong) YKWithdrawalOfCashAmountOfWithdrawalViewBankInfoModel *bankInfoModel;//YKWithdrawalOfCashAmountOfWithdrawalViewBankInfoModel

@end

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view.
    [self setUpView];
    [self setUpLayouts];
    [self requestData];
    [self handelEvent];
    [self notification];
}
//导航栏title
- (void)setupNavigationItems
{
    [super setupNavigationItems];
    
    self.title = @"提现";
    
    self.titleView.tintColor = UIColorWhite;
    
    self.navigationItem.leftBarButtonItem = [UIBarButtonItem qmui_itemWithImage:UIImageMake(@"nav_back") target:self action:@selector(back)];

    self.navigationItem.leftBarButtonItem.tintColor = UIColorWhite;
    
}
- (void)back{
    
    [self.navigationController popViewControllerAnimated:YES];
    
}

//导航栏背景色
- (UIImage *)qmui_navigationBarBackgroundImage
{
    return [JFTool gradientImageWithColors:@[RGBAColor(240, 197, 129, 1.0), RGBAColor(248, 220, 164, 1.0)] size:CGSizeMake(ZXJ_SCREEN_W, ZXJ_NavigationBar_H)];;
}
//状态栏
- (UIStatusBarStyle)preferredStatusBarStyle
{
    if (@available(iOS 13.0, *)) {
        return UIStatusBarStyleLightContent;
    } else {
        // Fallback on earlier versions
        return UIStatusBarStyleDefault;

    }
}
- (void)setUpView{
    
    [self.view addSubview:self.tableView];
    
}

- (void)setUpLayouts{
    
    [self.tableView mas_makeConstraints:^(MASConstraintMaker *make) {
        make.top.mas_equalTo(ZXJ_NavigationBar_H);
        make.left.right.mas_equalTo(0);
        make.bottom.mas_equalTo(-ZXJ_Safe_Bottom_H);
    }];
    
}

- (void)requestData{
    
    //判断是否是户主,户主拥有添加房间和编辑的权限,非户主只能查看👀
//    self.isUserFamilyMaster = [XLMineFamilyManageentRequest isUserFamilyMaster:[XLFamilyManager sharedInstance].currentFamily];
    
    //登录时获得家庭信息
//    self.dataSource = [XLMineFamilyManageentRequest getFamilyManagementView:[XLFamilyManager sharedInstance].currentFamily];
    
    self.bankInfoModel = 
    [self.tableView reloadData];
}

- (void)handelEvent{
    
}

- (void)notification{
    // 注册通知,也是观察通知,接收通知消息和值
//    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(getUpdateFamilyNotificationAction:) name:XL_UpdateFamilyNotification object:nil];
//    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(getCardSourceFromLocal:) name:XL_UpdateAllDevicesNotification object:nil];
//    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(getCardSourceFromLocal:) name:XL_DeviceControlReportNotification object:nil];
//    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(getCardSourceFromLocal:) name:XL_DeviceInfoReportNotification object:nil];
}
//设备本地缓存数据
- (void)getCardSourceFromLocal:(NSNotification*)note{
    [self requestData];//更新界面
}
- (void)getUpdateFamilyNotificationAction:(NSNotification*)note{
    NSDictionary *dict = note.userInfo;
    NSString *result = dict[@"result"];
    NSLog(@"接收到通知内容:%@",result);
    [self requestData];//更新界面
}
#pragma mark - table view data source
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
    return 3;
}

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
    
    return 1;
    
}

-(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
    
    CGFloat heightForRow = 92;
    
    if(indexPath.section == 0){
        heightForRow = 92;
    }else if (indexPath.section == 1){
        heightForRow = 334;
    }else if (indexPath.section == 2){
        heightForRow = 139;
    }else{
        heightForRow = 92;
    }
        
    return heightForRow;
}

- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section {
    return nil;
}

- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section  {
    
    return 0.1f;
}

- (UIView *)tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section {
    
    return nil;
}

- (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section  {
    return 6.1f;
}

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    
    
    if(indexPath.section == 0){//可提现金额
        static NSString *const cellID = @"YKWithdrawalOfCashHeaderViewCell";
        YKWithdrawalOfCashHeaderViewCell *cell = [tableView dequeueReusableCellWithIdentifier:cellID];
//        cell.model = self.dataSource[indexPath.section][indexPath.row];
        return cell;
    }else if (indexPath.section == 1){//提现金额
        static NSString *const cellID = @"YKWithdrawalOfCashAmountOfWithdrawalViewCell";
        YKWithdrawalOfCashAmountOfWithdrawalViewCell *cell = [tableView dequeueReusableCellWithIdentifier:cellID];
//        cell.model = self.dataSource[indexPath.section][indexPath.row];
        return cell;
    }else if (indexPath.section == 2){//提现说明
        static NSString *const cellID = @"YKWithdrawalOfCashInstructionsForWithdrawalViewCell";
        YKWithdrawalOfCashInstructionsForWithdrawalViewCell *cell = [tableView dequeueReusableCellWithIdentifier:cellID];
        cell.model = self.dataSource[indexPath.section][indexPath.row];
        return cell;
    }else{//其他
        static NSString *const cellID = @"YKWithdrawalOfCashHeaderViewCell";
        YKWithdrawalOfCashHeaderViewCell *cell = [tableView dequeueReusableCellWithIdentifier:cellID];
//        cell.model = self.dataSource[indexPath.section][indexPath.row];
        return cell;
    }

}

- (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath {
    ZXJSectionCornerViewAttribute *attribute = [ZXJSectionCornerViewAttribute new];
    attribute.radius = 10.f;
    attribute.lineLeftMargin = 32.f;
    attribute.lineRightMargin = 32.f;
    attribute.separatorColor = RGBAColor(224, 229, 229, 1.0);
    [tableView tableView:tableView willDisplayCell:cell forRowAtIndexPath:indexPath withAttribute:attribute];
}

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
    
        NSLog(@"点击了第%ld组第%ld行",indexPath.section,indexPath.row);
    
}


#pragma mark - Setter && Getter  懒加载
- (UITableView *)tableView{
    if (!_tableView) {
        _tableView = [[UITableView alloc] initWithFrame:CGRectZero style:UITableViewStyleGrouped];
        _tableView.delegate = self;
        _tableView.backgroundColor = RGBAColor(245, 245, 245, 1.0);
        _tableView.dataSource = self;
        // 假设你的UITableView实例名为tableView
        _tableView.rowHeight = UITableViewAutomaticDimension;
        _tableView.estimatedRowHeight = 44.0; // 提供一个估算的行高,这个值可以根据你的需求调整
        //注册cell
        [_tableView registerClass:[YKWithdrawalOfCashHeaderViewCell class] forCellReuseIdentifier:NSStringFromClass([YKWithdrawalOfCashHeaderViewCell class])];
        [_tableView registerClass:[YKWithdrawalOfCashAmountOfWithdrawalViewCell class] forCellReuseIdentifier:NSStringFromClass([YKWithdrawalOfCashAmountOfWithdrawalViewCell class])];
        [_tableView registerClass:[YKWithdrawalOfCashInstructionsForWithdrawalViewCell class] forCellReuseIdentifier:NSStringFromClass([YKWithdrawalOfCashInstructionsForWithdrawalViewCell class])];
        //  这是全部去掉cell下划线
        _tableView.separatorStyle = UITableViewCellSeparatorStyleNone;
//        UIView *footView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, ZXJ_SCREEN_W, ZXJ_Tabbar_H+12)];
//        _tableView.tableFooterView = footView;
        _tableView.showsVerticalScrollIndicator = NO;
       
        _tableView.contentInsetAdjustmentBehavior = UIScrollViewContentInsetAdjustmentNever;
        
    }
    return _tableView;
}

 

posted on 2025-04-03 10:08  高彰  阅读(9)  评论(0)    收藏  举报

导航