微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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 8.1

解决方法

Apple文件

…在iOS 7中,单元格认为白色背景;在早期版本的iOS中,单元格继承封闭表视图的背景颜色.如果要更改单元格的背景颜色,请在表视图委托的tableView:willdisplayCell:forRowAtIndexPath:方法中执行此操作.

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

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

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

原文地址:https://www.jb51.cc/iOS/331803.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐