我有UITableView,它在iOS 7中显示白色背景问题。我已经应用了cell.backgroundColor = [UIColor clearColor]修复程序,它适用于所有其他UITables,但没有一个。

奇怪的是,如果我向上或向下滚动屏幕,它将正确地重绘具有我们一直使用的背景的表格。滚动后只有表格的中间部分保持白色,这是我无法滚动到顶部或底部的部分。

到目前为止,这是我目前无济于事的方法(这是标准解决方法):

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7) {
        cell.backgroundColor = [UIColor clearColor];
    }
}


我也使用了这个没有影响:

- (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath
{
    if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7) {
        [cell setBackgroundColor:[UIColor clearColor]];
    }
}


这是在上下滚动后表格的外观(滚动之前看起来全为白色):

最佳答案

cell.contentView可能会影响背景。它是第一个单元格的子视图,其框架与cell.bounds相同。尝试添加

cell.contentView.backgroundColor = [UIColor clearColor];


两种方法。

10-08 20:05