UICollectionViewCell中的不透明UILabel具有奇怪的渲染行为

时间:2013-04-11 09:52:21

标签: ios uilabel uicollectionview uicollectionviewcell ios6.1

我今天在UICollectionViewCell中遇到过UILabels的一些非常奇怪的行为,我希望你们其中一个人能够对此有所了解。

我无法向您展示代码或完整的屏幕截图,但我会尝试尽可能地解释和说明;

我有一个UICollectionView,它有几个单元格并支持水平滚动。 在细胞中,我有一个我设置的标签 - (UICollectionViewCell *)collectionView:(UICollectionView *)cv cellForItemAtIndexPath:(NSIndexPath *)indexPath并明确- (void)prepareForReuse

看起来非常正常,我甚至有一个完全像这样的实现,没有任何奇怪的效果。

现在,出于性能原因,我在Interface Builder中设置了UILabel的不透明度。 当我滚动几次时,我会看到这个:

weird rendering behavoir

每当我在Interface Builder中关闭opaque时,我都会看到: enter image description here

我对UITableViews和UICollectionViews(以及重用等)有很多经验,但我无法正确解释这种行为......

1 个答案:

答案 0 :(得分:0)

yourLabel.backgroundColor = UIColor.whiteColor()

UILabel的默认背景颜色是清晰的颜色。如果将标签设置为不透明,则还需要将背景颜色设置为不透明颜色。