1

我正在使用自定义单元格创建表格视图,它看起来像新闻提要 - 在灰色背景上,有带圆角和阴影的矩形。

cellForRowAtIndexPath调用方法时,我正在设置这样的阴影:

cell.postCard.layer.cornerRadius = 3
cell.postCard.layer.shadowColor = UIColor.darkGrayColor().CGColor
cell.postCard.layer.shadowOffset = CGSizeMake(0,1)
cell.postCard.layer.shadowRadius = 3
cell.postCard.layer.shadowOpacity = 0.5
cell.layer.shadowPath = UIBezierPath(rect: cell.postCard.layer.bounds).CGPath

postCard 是 UIView - 它是所有单元格上下文的容器。

我读过我需要添加 shadowPath 以获得良好的性能,但我认为它不起作用,因为当我缓慢移动表视图时会结结巴巴。可能是使用模拟器而不是真实设备的原因吗?

4

3 回答 3

1

您正在为单元格图层设置阴影路径,同时修改 cell.postCard 的阴影设置

cell.postCard.layer.shadowOpacity = 0.5
cell.layer.shadowPath = UIBezierPath(rect: cell.postCard.layer.bounds).CGPath

这真的是你需要的吗?

于 2016-01-15T19:45:49.070 回答
0

此外,您应该为您的单元格设置“cell.clipsToBounds = false”。

于 2017-04-10T09:19:14.740 回答
0

尝试阅读有关它should​Rasterize以及它如何处理 UI 元素的阴影和圆角半径的信息。您可以通过操纵值来提高性能should​Rasterize

于 2017-04-10T09:27:59.400 回答