UITableViewCell中的shadowOffset滚动时导致缓慢

时间:2015-11-14 06:33:20

标签: objective-c

我有细胞的UITable:

enter image description here

当我在表格中滚动时,我在表格重新加载时崩溃和碎片

当我删除阴影代码时,缓慢和碎片消失了。 但我需要阴影。

    self.layer.shadowOffset = CGSizeMake(-1,1);
    self.layer.shadowRadius = 2;
    self.layer.shadowColor = [[UIColor blackColor] CGColor];
    self.layer.shadowOpacity = 0.5;

1 个答案:

答案 0 :(得分:1)

尝试在图层属性上设置shadowPath。指定显式路径通常可以提高渲染性能。

 self.layer.shadowOffset = CGSizeMake(-1,1);
 self.layer.shadowRadius = 2;
 self.layer.shadowColor = [[UIColor blackColor] CGColor];
 self.layer.shadowOpacity = 0.5; 
 self.layer.shadowPath = [UIBezierPath bezierPathWithRoundedRect:self.bounds cornerRadius:10].CGPath;

使用self.bounds作为路径rect,确保已设置视图的帧。