0

设置cornerRadius和masksToBounds会导致离屏渲染,这样会影响表格滚动时的性能。虽然这在之前已经提到过很多次,但有没有人在 iOS 9 中对此进行过实验?

这是我的演示,似乎设置cornerRadius对滚动性能没有任何影响。在我的 iPhone 6 上,平均 fps 仍然是 57 或 58。

iOS 9 是否进行了任何优化或我做错了什么?

顺便说一句,我注意到当 UIImageView 是正方形时(宽度 = 高度),设置一些 UIImageView 的 conner 不会导致离屏渲染。这是怎么发生的?

4

2 回答 2

0

似乎我没有向单元格添加足够的图像。当呈现图像的数量达到30或更多时,对性能的影响变得明显。平均 fps 下降到 33。

于 2016-02-28T07:12:16.910 回答
0

您误解了警告的内容cornerRadiusmasksToBounds内容。您只是在单元格内设置一些图像视图的cornerRadius和。masksToBounds这些图像视图不是滚动表格视图时动画的内容:它是动画的单元格。细胞内部已经完全复合;它不必在动画的每一帧上重新合成。

如果您设置了每个单元格cornerRadius的and ,您可能会看到对滚动的一些更严重的影响。masksToBounds

于 2016-02-27T16:27:59.667 回答