本文 是通过建模 获取数据的
UITableView 分为Grouped 模式 和 plain 模式
在写 UITableView 的时候需要先把 数据源 交给 控制器
- (void)viewDidLoad {
[super viewDidLoad];
//设置数据源
self.tableView.dataSource = self;
}
然后就是带哦用数据源方法
//有多少组数据
// How many sets of data
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView{
return self.automobileGroups.count;
}
//每组数据有多少行
// section groups have how many rows
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
AutomobileGroups* a1 = self.automobileGroups[section];
return a1.automobiles.count;
}
//每行的信息是什么
这里是这个如果 要添加 详情信息 就要换成这个 UITableViewCellStyleSubtitle
// Each row shows cell how
- (UITableViewCell*)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
// indexPath.row 行
// indexPath.section 组
AutomobileGroups* a1 = self.automobileGroups[indexPath.section];
UITableViewCell* cell = [[UITableViewCell alloc]initWithStyle:UITableViewCellStyleDefault reuseIdentifier:nil];
cell.textLabel.text = a1.automobiles[indexPath.row];
//cell.detailTextLabel.text 详情信息 return cell; }
// 如果 添加 头部 和 结尾
- (NSString*)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section{//头部
AutomobileGroups* ag = self.automobileGroups[section];
return ag.title;
}
- (NSString*)tableView:(UITableView *)tableView titleForFooterInSection:(NSInteger)section{//结尾
AutomobileGroups* ag = self.automobileGroups[section];
return ag.desc;
}
//修改table 的高度 默认 高度 为44
方法一
self.tableView.rowHeight = 60;
第二种 为代理的方法
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{
//可以 改变 某些 行的行高
return 60;
}