自定义单元格UITableview

时间:2012-09-24 10:19:20

标签: iphone objective-c

我想在我的UITableview中有一个自定义单元格。我尝试了以下内容:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"Cell";

CustomCell *cell = (CustomCell*)[tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {

    NSArray* views = [[NSBundle mainBundle] loadNibNamed:@"Cell" owner:nil options:nil];

    for (UIView *view in views) {
        if([view isKindOfClass:[UITableViewCell class]])
        {
            cell = (CustomCell*)view;
        }
    }
}
[cell setLabelText:[daten objectAtIndex:indexPath.row]];
return cell;

}

但是我在这一行得到例外:

CustomCell *cell = (CustomCell*)[tableView dequeueReusableCellWithIdentifier:CellIdentifier];

4 个答案:

答案 0 :(得分:0)

这就是我制作自定义单元格并从类中调用它的方法: -

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
     {
    CustomCell *cell = (CustomCell *)[tableView dequeueReusableCellWithIdentifier:[cell reuseIdentifier]];

    if (cell == nil)
    {
        [[NSBundle mainBundle] loadNibNamed:@"CustomCell" owner:self options:nil];
        cell = customCell;
        customCell = nil;
    }

    // Configure the cell.
    cell.serialLabel.text = [[NSNumber numberWithInt:indexPath.row+1]stringValue];
    cell.textLabel.textColor=[UIColor whiteColor];
    cell.selectionStyle = UITableViewCellSelectionStyleNone;
    return cell;
    }

答案 1 :(得分:0)

我几乎可以确定您的XIB文件中已断开连接。如果commentLabel仍然存在,您应该删除它并创建一个新的插座或检查插座部分并删除额外的连接,一切都会好的!

编辑: 如果在IB中有两个插座连接到同一标签,则会发生此错误。

enter image description here

答案 2 :(得分:0)

如果你没有使用最新的ios SDK,请确保你已经写好了 @synthesize commentLabel; 在CustomCell中

答案 3 :(得分:0)

尝试清理构建文件夹,或尝试模拟器 - >重置内容和设置。