1.基础的优化准则(高度缓存, cell 重用...)
滚动很快时,只加载目标范围内的Cell,这样按需加载,极大的提高流畅度。提前计算并缓存 好高度(布局),因为heightForRowAtIndexPath:是调用最频繁的方法。异步绘制,遇到复 杂界面,遇到性能瓶颈时,可能就是突破口。滑动时按需加载,这个在大量图片展示,网络加 载的时候很管用!(SDWebImage已经实现异步加载,配合这条性能杠杠的)。
除了上面最主要的三个方面外,还有很多几乎大伙都很熟知的优化点:
正确使用reuseIdentifier来重用Cells
尽量使所有的viewopaque,包括Cell自身
尽量少用或不用透明图层
如果Cell内现实的内容来自web,使用异步加载,缓存请求结果
减少subviews的数量
在heightForRowAtIndexPath:中尽量不使用cellForRowAtIndexPath:,如果你需要用到 它,只用一次然后缓存结果
尽量少用addView给Cell动态添加View,可以初始化时就添加,然后通过hide来控制是否显
2.学会使用调试工具分析问题
http://www.jianshu.com/p/af6b095aaaf3
http://blog.csdn.net/icetime17/article/details/46709975
作者:kidzss
链接:http://www.jianshu.com/p/c12f90300077
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。