根据部分更改CellReuseIdentifier

时间:2012-07-22 09:20:06

标签: objective-c uitableview xib reuseidentifier

我有一个UITableView和一些具有不同表视图样式的.xib。每个.xib都有自己的类,并根据该部分注册了重用标识符。例如: 在我的viewDidLoad中,我有以下内容:

UINib *cellStyleOne = [UINib nibWithNibName:@"CellStyleOne" bundle:nil];
[self.tableView registerNib:cellStyleOne forCellReuseIdentifier:@"CellStyleOne"];

UINib *cellStyleTwo = [UINib nibWithNibName:@"CellStyleTwo" bundle:nil];
[self.tableView registerNib:cellStyleTwo forCellReuseIdentifier:@"CellStyleTwo"];

UINib *cellStyleThree = [UINib nibWithNibName:@"CellStyleThree" bundle:nil];
[self.tableView registerNib:cellStyleThree forCellReuseIdentifier:@"CellStyleThree"];

如何将这些重用标识符中的每一个分配给我的cellForRowAtIndexPath中的一部分单元格而不会导致任何问题?

感谢。

1 个答案:

答案 0 :(得分:1)

您可以在cellForRowAtIndexPath:内返回您喜欢的任何单元格,只需执行类似

的操作
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    if (indexPath.section == 0)
    {
        //create and return a cell with reuse ID: @"CellStyleOne"
    }
    else 
    {
        //create and return a cell using a different reuse ID
    }
}