我正在使用自定义单元格创建表格视图,它看起来像新闻源 - 在灰色背景上有带圆角和阴影的矩形。
当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以获得良好的性能,但我认为它不起作用,因为当我慢慢移动表视图时会出现口吃。可以使用模拟器而不是真实设备吗?
答案 0 :(得分:1)
您正在设置影子图层的阴影路径,同时修改cell.postCard的阴影设置
cell.postCard.layer.shadowOpacity = 0.5
cell.layer.shadowPath = UIBezierPath(rect: cell.postCard.layer.bounds).CGPath
这真的是你需要的吗?
答案 1 :(得分:0)
此外,您应该为您的单元格设置'cell.clipsToBounds = false'。
答案 2 :(得分:0)
尝试read关于shouldRasterize
以及它如何处理UI元素的阴影和角半径。您可以通过操纵shouldRasterize
值来提升性能。