关于列表(tableview、collectionview)的一点记录(持续更新)

本文详细记录了在iOS开发中,针对tableView和collectionView的优化策略,包括cell复用时的内容清除、延迟刷新网络图片、通过枚举管理不同类型的cell以及动态适应cell大小的方法。通过这些技巧,可以提升列表滚动的流畅性和性能。
摘要由CSDN通过智能技术生成

1、cell复用的时候,之前内容的清除方式

重写cell的prepareForReuse方法:当前已经被分配的cell如果被重用了,会调用cell的prepareForReuse通知cell(一定要调用父类方法[super prepareForReuse] ),只需要在prepareForReuse方法中做置空操作


2、cell中有需要在延迟刷新的场景处理(如:网络图片)

在刷新的时候,单独刷新对应并可见的cell。如:网络图片的时候,给cell一个属性记录图片的网络链接的md5值,当下载完成通知刷新的时候,再通过tableview、collectionview的属性visibleCells获取到当前可见的cell,看完成下载的图片当前是否可见,如果可见的话,单独刷新这个cell,不可见可以直接不刷新(因为再次可见的时候会自动刷新)

在加载较多图片的场景下,需要考虑图片解码的性能问题,详细的图片解码性能讲解可以参考这篇文章


3、关于section或者row对应问题

通常会出现一个列表中的某个或者某几个特定的cell要特殊处理,这个时候会用到index来区分,较好的方式是通过定义枚举的方式来区分不同的cell,这样后期的维护或者扩展

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值