JZ专题

UITableView性能优化问题

2016-04-19  本文已影响201人  Crazy2015

TableView为什么会卡?

主要由以下原因:

优化核心思想:UITableViewCell重用机制

简单的理解就是:UITableView只会创建一屏幕(或一屏幕多一点)的UITableViewCell,其他都是从中取出来重用的。每当Cell滑出屏幕时,就会放入到一个集合(或数组)中(这里就相当于一个重用池),当要显示某一位置的Cell时,会先去集合(或数组)中取,如果有,就直接拿来显示;如果没有,才会创建。这样做的好处可想而知,极大的减少了内存的开销。

Tips:

Bonus:

参考资料:
code-uitableviewcell-optimizations-part-1
code-uitableviewcell-optimization-part-2
Perfect smooth scrolling in UITableViews
优化UITableViewCell高度计算的那些事
详细整理:UITableView优化技巧
UITableview性能优化总结
AsyncDisplayKit 教程:达到 60 FPS 的滚动帧率
AsyncDisplayKit
YYAsyncLayer

转载:http://blog.wangruofeng007.com/blog/2016/01/18/tableviewxing-neng-you-hua/

上一篇 下一篇

猜你喜欢

热点阅读