【解决方法】UITableView 性能优化笔记

  1. 1、网络图片异步载入,SDWebImage。
  2. 2、文字直接 drawInRect/drawAtPoint 绘制,參考 ABTableViewCell。AdvancedTableViewCells

  3. 3、本地图片也能够直接绘制,或者用 CALayer 来加入显示。
  4. 4、cell 重用机制。

  5. 5、cell 内容尽量避免透明效果。
  6. 6、如非必要,降低 reloadData 所有 cell,仅仅 reloadRowsAtIndexPaths。
  7. 7、假设 cell 是动态行高。计算出高度后缓存。tableView 会在载入的时候把所有 cell 的高度通过heightForRowAtIndexPath: 都计算出来。即使 cell 还没有展示。

  8. 8、假设 cell content 的展示位置也不固定,第一次计算后也要缓存。
  9. 9、cell 高度固定的话直接用 cell.rowHeight 设置高度,不要再实现 tableView:heightForRowAtIndexPath: delegate.
  10. 10、cell content 的解析操作(尤其是复杂的解析)异步进行+预运行,解析结果要缓存。
  11. 11、能够预先载入须要的网络资源(图片等)。SDWebImagePrefetcher.
原文地址:https://www.cnblogs.com/cxchanpin/p/7084496.html