IOS TableView 分组
2020-11-21 本文已影响0人
奇梦人
- 创建 TableView
@property (nonatomic, strong) UITableView *tableView;
-(void)setContentView{
_tableView = [UITableView new];
[self.view addSubview: _tableView];
}
- 实现接口
<UITableViewDataSource,UITableViewDelegate>
- 需要实现的方式
#pragma mark 返回分组数
-(NSInteger)numberOfSectionsInTableView:(UITableView *)tableView{
return self.recordList.count;
}
#pragma mark - 设置分组的高度
- (CGFloat) tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section{
return countcoordinatesX(41);
}
#pragma mark 返回每组行数
-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
return self.recordList[section].modelList.count;
}
#pragma mark - 自定义分组头
- (UIView *) tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section{
//1 自定义头部
UIView * view=[[UIView alloc] init];
view.backgroundColor=[UIColor colorWithHexString:@"#F2F3F7"];
// 2 增加控件
UILabel * titleLable=[UILabel new];
[view addSubview:titleLable];
titleLable.text = self.recordList[section].title;
titleLable.textColor = [UIColor colorWithHexString:@"666666"];
titleLable.font = [UIFont systemFontOfSize:16];
[titleLable mas_makeConstraints:^(MASConstraintMaker *make) {
make.centerY.mas_equalTo(view.mas_centerY);
make.left.mas_equalTo(countcoordinatesX(16));
}];
return view;
}
#pragma mark cell视图
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
RechargeRecordsTableViewCell * cell = [[RechargeRecordsTableViewCell alloc]initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:@"rechargeRecordsCell"];
if (cell == nil) {
cell = [[RechargeRecordsTableViewCell alloc]initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:@"rechargeRecordsCell"];
}
[cell layouttableViewCell:self.recordList[indexPath.section].modelList[indexPath.row]];
return cell;
}
#pragma mark 设置cell高度
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{
return countcoordinatesX(61);
}