不止一次从nib文件中读取自定义表格单元格

时间:2011-05-02 14:56:32

标签: iphone objective-c cocoa-touch

我目前正在尝试从自己的nib文件加载自定义表格视图单元格,而不是在代码中绘制单元格。除了我不明白如何使我的表视图包含我的自定义表格单元格的多个实例之外,它还可以。让我们看看我是否可以解释我的问题......

在我的表视图控制器中,我有类似IBOutlet MyFancyCell *fancyCell;的内容,然后我将控制器作为MyFancyCell.xib的所有者,并将控制器中的插座连接到Interface Builder中的表格单元视图。

[[NSBundle mainBundle] loadNibNamed:@"MyFancyCell" owner:self options:nil];

我的控制器fancyCell中的

最终指向我花哨的自定义表格视图单元格的实例。

现在,如果我想在表格视图中找到两个精美的单元格呢?

1 个答案:

答案 0 :(得分:1)

您只需临时使用该IBOutlet加载自定义单元格。在您的cellForRowAtIndexPath中,您可以执行以下操作:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {

    static NSString *CellIdentifier = @"MyFancyCell";

    MyFancyCell *cell = (MyFancyCell *)[tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    if (cell == nil) {
        [[NSBundle mainBundle] loadNibNamed:@"MyFancyCell" owner:self options:nil];
        cell = fancyCell;
        self.fancyCell = nil;
    }

    // configure cell...

    return cell;
}