【解决方法】UITableView 性能优化笔记
2024-08-27 07:55:51
- 1、网络图片异步载入,SDWebImage。
- 2、文字直接 drawInRect/drawAtPoint 绘制,參考 ABTableViewCell。AdvancedTableViewCells。
- 3、本地图片也能够直接绘制,或者用 CALayer 来加入显示。
- 4、cell 重用机制。
- 5、cell 内容尽量避免透明效果。
- 6、如非必要,降低 reloadData 所有 cell,仅仅 reloadRowsAtIndexPaths。
- 7、假设 cell 是动态行高。计算出高度后缓存。tableView 会在载入的时候把所有 cell 的高度通过
heightForRowAtIndexPath:
都计算出来。即使
cell 还没有展示。 - 8、假设 cell content 的展示位置也不固定,第一次计算后也要缓存。
- 9、cell 高度固定的话直接用
cell.rowHeight
设置高度,不要再实现tableView:heightForRowAtIndexPath:
delegate. - 10、cell content 的解析操作(尤其是复杂的解析)异步进行+预运行,解析结果要缓存。
- 11、能够预先载入须要的网络资源(图片等)。SDWebImagePrefetcher.
最新文章
- PHP上传(单个)文件示例
- catalina
- print_r、echo、var_dump三者的区别
- ios项目中引用其他项目复习
- C语言中的二维数组和数组指针的那些事
- ARM的工作环境和工作模式
- 【svn】server建立以及svn使用
- python学习第八天 -- 迭代
- LeerCode 123 Best Time to Buy and Sell Stock III之O(n)解法
- Quartz CronTrigger运用
- SQL ;Server ;2008 ;R2 ;跟踪标志
- 速卖通AE平台+聚石塔+奇门 完整教程V2
- Pycharm安装并配置jupyter notebook
- [Swift]LeetCode514. 自由之路 | Freedom Trail
- yum常用命令大全
- 从简单的mongodb example 的观察
- 2.3.1 TextView(文本框)详解
- WorldWind源码剖析系列:影像图层类ImageLayer
- 认识epoll
- BZOJ1076: [SCOI2008]奖励关【状压DP+期望DP】