5

我有一些有趣的通知,滚动性能启用 ,UITableView并启用。cornerRadiusborderWidthborderColor

self.tableView.layer.cornerRadius = 10.f;
self.tableView.layer.borderWidth = 1.0f;
self.tableView.layer.borderColor = [UIColor whiteColor].CGColor;

如果我删除borderWidth并且borderColor滚动获得 60 FPS 没问题。只要我将这两个属性添加到图层 FPS 滴中。

有没有人建议或解释为什么会发生这种奇怪的行为?

非常感谢!

4

2 回答 2

6

CALayer 具有针对此类性能问题的 shouldRasterize 属性。刚设置

self.tableView.layer.shouldRasterize = YES;

这条线节省了我很多时间和工作。

于 2013-03-30T06:11:38.423 回答
1

我刚刚发现带有borderWidth 的cornerRadius 的tableView 性能下降了很多。因此,我改为 5.f 而不是 10.f 半径,性能有了惊人的提高。仍然不完美,但明显更好......

于 2012-07-04T07:28:45.247 回答