在升级了xcode7后,发现有个自定义TableViewCell的在xib上添加的view无法正常显示。但是在点击的时候却有可以正常显示。效果如下:
cell的内容很简单,就是在xib中添加一个用于表示badge的view
于是开始在xcode进行视图调试
在cell的结构中发现,自定义添加的LkBadgeView在视图最底层。可能因为我又用了UITableViewCell的默认自带的textLabel和imageView。猜测在iOS9中,这些UITableViewCell的控件添加到cell的时间在从xib获取之后。
发现原因后解决办法就很简单了。在cell的awakeFromNib方法中将textLabel的背景色设为透明。
- (void)awakeFromNib {
self.textLabel.backgroundColor=[UIColor clearColor];
}