1.tableview的卡顿优化:
- 避免cell的重新布局以及利用cell的重用机制,cell的布局是比较耗时的,尤其是UI比较复杂的或者带图片这些。一般创建好的时候就布局好,如果有需要那么可以把cell放在单独的类中,创建的时候就布局好
- 提前计算好cell的高度
- 不要在cell上使用阴影圆角等layer的操作,很耗时的。
- cell上的图片采用异步加载的方式显示。
- 尽量不使用addsubview这些添加视图的操作
- 尽量减少cell的重绘操作,比如drawRect等方法。如果要重绘尽量使用异步重绘。
2.APP的启动优化:主要分main函数之前和之后的优化
- main函数之前:
- 删除无用代码尤其是静态变量、类和方法。
- 尽量使用静态动,减少dylibs动态库的引用。
- 压缩资源图片等。
2.main函数之后:
- 尽量用+intalize来替换+load方法。
3.首屏渲染优化:
- 尽量减少阴影等操作。
- 尽量对图片尽量高质量的压缩,比如无损压缩。
- 排查一些不用类库进行删除。
4.减少内存泄露:
可以通过Xcode自带的leak去检测内存泄露。
5.尽量使用多线程:
对于一些繁琐的操作尤其是下载操作,可以使用异步或者多线程的方式去处理。