UITableView中的奇怪行为 - 一个单元格显示不同

时间:2013-02-24 16:29:12

标签: ios uitableview

我的App中有一个UITableView有问题。我把它设置为每个其他表,仍然有一个单元格总是有一个白色背景而不是[UIColor clearColor]。 这就是我实施tableView:cellForRowAtIndexPath:

的方式
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *cellIdent = @"NewSessionCell";

    UITableViewCell *cell = [self.tableSubjects dequeueReusableCellWithIdentifier:cellIdent];

    if (cell == nil) {
        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cellIdent];
    }

    [cell setAutoresizesSubviews:NO];
    [cell setBackgroundColor:[UIColor clearColor]];

    // set text color and font
    [cell.textLabel setTextColor:[UIColor whiteColor]];
    [cell.textLabel setFont:[UIFont systemFontOfSize:18.0]];

    // set clear background for selected cell
    UIView *backView = [[UIView alloc] initWithFrame:CGRectZero];
    backView.backgroundColor = [UIColor clearColor];
    [cell setSelectedBackgroundView:backView];

    // set highlight text color to dark gray
    float colValue = 0.2;
    [cell.textLabel setHighlightedTextColor:[UIColor colorWithRed:colValue green:colValue blue:colValue alpha:1]];

    // set title
    [cell.textLabel setText:[(self.subjects)[indexPath.row] caption]];

    return cell;
}

这与应用程序中的每个其他表格完全相同,但在此特定表格中,一个单元格始终为白色,如下面的屏幕截图所示。

这发生在我的iPhone 4S以及模拟器中。 我试图从手机/模拟器中删除该应用程序,重新启动XCode,清洁&重建解决方案,没有任何改变。

screenshot of table with white cell

1 个答案:

答案 0 :(得分:0)

我不确定这是怎么回事,但问题与setBackgroundColor:方法有什么关系。如果我将其删除,则问题仍然存在,但是将其设置为除[UIColor clearColor]以外的任何颜色都会更改背景颜色,但单元格会正确显示。