iOS 8.1 UITableview背景颜色始终为白色

所以我已经在iOS 7.1中测试过了,它工作正常。 我使用下面的行设置背景颜色以清除我的tableview。

    self.tableview = [[UITableView alloc]initWithFrame:self.bounds style:UITableViewStylePlain];
    self.tableview.delegate = self;
    self.tableview.dataSource = self;
    self.tableview.backgroundView = nil;
    self.tableview.backgroundColor = [UIColor clearColor];
    self.tableview.tableFooterView = [[UIView alloc]initWithFrame:CGRectZero];
    [self addSubview:self.tableview];

我还将tableFooterView设置为一个新视图,以隐藏未使用单元格上的任何剩余部分。

self.tableview.tableFooterView = [[UIView alloc]initWithFrame:CGRectZero];

这在iOS 7上运行的很好,但在iOS 8中,我在桌面视图下为空白留下了一个白色背景颜色。 tableview坐在里面的superview也具有清晰的背景色。 有任何想法吗?

在下面添加图片 - 我不得不掩盖客户名称

在iOS 7上工作 在iOS 7上工作

不适用于iOS 8.1 在这里输入图像描述


苹果文件说

...在iOS 7中,默认情况下,单元格具有白色背景; 在早期版本的iOS中,单元格继承封闭表视图的背景颜色。 如果您想更改单元格的背景颜色,请在表视图委托的tableView:willDisplayCell:forRowAtIndexPath:方法中执行此操作。

您可能需要使用willDisplayCell UITableView委托方法为您的表视图提供透明背景。

- (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cellforRowAtIndexPath:(NSIndexPath *)indexPath

{
      [cell setBackgroundColor:[UIColor clearColor]];
}

对我来说,这是什么工作(我在自己的XIB中使用自定义的UITableViewCell ):

  • 设置单元格的内容视图背景以清除IB中的颜色。
  • 在IB中设置单元格的背景以清除颜色。
  • 在viewDidLoad中编程方式将表视图的背景色设置为UIColor.clearColor() 。 在Storyboard中执行此操作不起作用。
  • 链接地址: http://www.djcxy.com/p/23489.html

    上一篇: iOS 8.1 UITableview Background Colour always white

    下一篇: Opening new connection after Connection Draining. Google Cloud Messaging