协议
<UITableViewDelegate,UITableViewDataSource>
注册Cell
static NSString *const XXCellId = @"XXCellId";
[self.tableView registerNib:[UINib nibWithNibName:NSStringFromClass([XXCell class]) bundle:[NSBundle mainBundle]] forCellReuseIdentifier:XXCellId];
初始化。赋值
XXCell *cell = [tableView dequeueReusableCellWithIdentifier:XXCellId];
cell.cellData = self.xxModel;
cell.cellData.indexPath = indexPath;
cell.selectionStyle = UITableViewCellSelectionStyleNone;
return cell;
获取数据源方法
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
return [[self.XXModel.xxx yyy] count];
}
返回几个区
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView{
return 1;
}
区头
- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section{
UIView *headerView = [[UIView alloc] init]]
return headerView;
}
- (UIView *)tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section{
UIView *footerView = [[UIView alloc] init]]
return footerView;
}
返回区头高度&返回区尾高度
- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section{
return 20;
}
- (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section{
return 20;
}
rowHeight估算高度
- (CGFloat)tableView:(UITableView *)tableView estimatedHeightForRowAtIndexPath:(NSIndexPath *)indexPath{
}
自适应高度方法之一
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{
return UITableViewAutomaticDimension;
}
- (NSString *)tableView:(UITableView *)tableView titleForFooterInSection:(NSInteger)section{
}
- (NSString *)tableView:(UITableView *)tableView titleForFooterInSection:(NSInteger)section{
}
表头
self.tableView.tableHeaderView = self.topView;
cell的点击事件
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
消除间隔线
self.tableView.separatorStyle = UITableViewCellSelectionStyleNone;