Dav*_*est 15 objective-c uitableview ios uistoryboard
我有一个关于具有3种不同原型单元的表视图的简单问题.前两个只发生一次,而第三个发生4次.现在我困惑的是如何在我的cellforRowatindexpath中指定哪个单元原型用于哪一行.所以,我想要第0行,使用原型1,第1行,使用原型2,第3,4,5行,第3行使用原型3.最好的方法是什么?我是否给每个原型一个标识符,然后使用dequeueReusableCellWithIdentifier:CellIdentifier?你能提供一些示例代码吗?
编辑:
还是行不通.这是我目前的代码.(我只有一个案例用于交换机状态,因为我只想测试并查看是否在第一行中生成了单元格,但当前表格视图为空白)
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
switch(indexPath.row)
{
case 0: {static NSString *CellIdentifier = @"ACell";
UITableViewCell *cell = [tableView
dequeueReusableCellWithIdentifier:@"ACell"];
if(cell==nil) {
cell=[[UITableViewCell alloc]
initWithStyle:(UITableViewCellStyleDefault) reuseIdentifier:@"ACell"];
}
return cell;
break;
}
}
}
Run Code Online (Sandbox Code Playgroud)
Acell是我创建的单元原型的标识符.一世
Bes*_*der 16
如果您使用三个原型,则使用三个标识符.因为只有一个标识符会导致问题.你会得到错误的结果.所以这样的代码.
if(indexPath.row==0){
// Create first cell
}
if(indexPath.row==1){
// Create second cell
}
else{
// Create all others
}
Run Code Online (Sandbox Code Playgroud)
您也可以在这里使用开关盒以获得最佳性能.
| 归档时间: |
|
| 查看次数: |
20590 次 |
| 最近记录: |