美文网首页
UITableView滑动卡顿的原因以及优化方法

UITableView滑动卡顿的原因以及优化方法

作者: 林希品 | 来源:发表于2023-02-02 14:27 被阅读0次

一、原因:

1、cell中需要加载图片及设置成圆角(layer.masksToBounds=YES)产生离屏渲染;
2、cell的重新布局;
3、cell的高度不确定;
4、cell中的控件的数量;
5、全局更新TableView;
6、使用了clearcolor,无背景色,透明度为0;
7、使用addView给cell动态的添加View;
8、实现了无用的代理方法;
9、做了多余的绘制工作;
10、没有预渲染图像。

二、解决方案:

1、加载网络图片使用异步加载,并缓存;尽量不要设置圆角,采用带圆角的图片;
2、cell的布局填充操作比较耗时,一般创建好久布局好;
3、提前计算cell的高度并缓存cell的属性;
4、尽量使cell的布局大致相同,不同风格的cell采用不同的重用标识符,初始化添加控件,不适用的先隐藏;
5、可以采用局部更新cell的内容;
6、因为渲染耗时较长,尽量使用颜色设置;
7、自定义cell,预先布局好cell的子视图;
8、实现一些必要用到的代理方法;
9、在实现drawRect:的时候,它的rect参数就是需要绘制的区域,这个区域之外的不需要进行绘制。例如可以用CGRectIntersectsRect、CGRectIntersection或CGRectContainsRect判断是否需要绘制image和text,然后再调用绘制方法。
10、在bitmap context里先将其画一遍,导出成UIImage对象,然后再绘制到屏幕。

作者:写下岁月的痕迹
链接:https://www.jianshu.com/p/76ab99b64040
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

相关文章

网友评论

      本文标题:UITableView滑动卡顿的原因以及优化方法

      本文链接:https://www.haomeiwen.com/subject/viowhdtx.html