【发布时间】:2015-05-26 07:52:08
【问题描述】:
我正在尝试优化我的UICollectionView(使用自定义布局)的滚动速度和流畅度,它有大约 400 个单元格,其中 150 个同时在屏幕上可见。
单元格本身并不是很复杂:它们由一个(完全不透明的)彩色背景和两个标签(具有相同的背景颜色)组成。
到目前为止,我已经阅读了几十篇关于优化速度的帖子
- 正确重复使用单元格,
- 避免所有背景都透明,
- 避免盒子阴影,
- 避免圆角半径,并且
- 避免使用分数单元格的位置和大小。
尽管进行了所有这些优化,但我仍然无法以 60 fps 流畅滚动。我也尝试了层光栅化 (shouldRasterize) 在出列单元后,但这对性能产生了负面影响。
减少同时可见的单元格数量是提高性能的唯一因素 - 滚动完全平滑,单元格更少。不幸的是,这不是一个选择。
我还能做些什么来接近 60 fps 并同时显示多个 UICollectionViewCells?
【问题讨论】:
标签: ios uicollectionview uicollectionviewlayout