美文网首页
UITableView的优化

UITableView的优化

作者: iSuTon | 来源:发表于2016-05-19 21:23 被阅读0次

    1、Cell 的复用机制

    2、子线程加载延时操作,主线程更新即可

    3、IO操作(延时操作),读取文件和写入文件,最好在cell显示之前将文件读取到内存(如程序加载时即读取)

    4、缓存 cell 的行高(因为如果根据 cell 的约束确定行高,每当显示之前都需要计算)

    5、注意使用预估行高(预估行高会使 cell 在显示之前才会去计算)

    6、cellForRowAtIndexPath里面.

            *.尽量不要做耗时的操作,如果避免不了使用子线程来处理

            *.从本地加载图片,contentOfFile,会在主线程,读文件是本来就是耗时的操作,一进入界面就先用子线程去本地加载图片 NSCache

           *.不要在cellForRowAtIndexPath里面写文件

           *.cellForRowAtIndexPath里面不要去创建和删除view,最好是先懒加载好,显示就view.hidden = false,不要显示view.hidden = true

    7、使用tableView dequeueReusableCellWithIdentifier:forIndexPath时会调用tableView:heightForRowAtIndexPath: ,注意会延时的操作

    8、tableView滚动的时候停下gif.视频

    9、view的透明层,能不设置就不设置,view尽量不要设置transform

    10、视图层次结构不要太多

    11、尽量不要图层圆角,1.将图片画成圆角2.让美工提供一张中间是圆角透明的图片遮在图片上面

    12、尽量不要去设置图层阴影,会造成额外的开销(离屏渲染) 离屏渲染:GPU在还没有渲染到屏幕上之前要多做的一次渲染 :虚拟机--》Debug --》Color XXX

    13、缓存cell的高度:cell高度不同的时候,最好只算一次,然后缓存起来,下次直接使用缓存的高度

    14、图片的拉伸或压缩会影响性能(最好一样大)

    15. AsyncDisplayKit ---> 第三方:https://github.com/facebook/AsyncDisplayKit

    相关文章

      网友评论

          本文标题:UITableView的优化

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