前言
在日常开发中,经常会遇到这种情况,cell中的按钮,图片,自定义view等控件数量不确定
这时候我们一般会根据后台返回数据加载个数,我们在属性set方法里创建UI并赋值,但这时候会导致cell数据错乱
原因就是因为每次刷新cell都会调用一遍set属性的方法
最简单的解决办法就是在cell移除的时候移除当前cell的所有后来创建的UI
新解决办法
我们参照cell的复用来手动的为需要实时创建的控件添加一个复用队列,每次用的时候从复用队列取,不用的时候添加到复用队列中
代码
1)创建复用队列dequePool 可见队列visiablePool
2)在set方法里实现控件的添加并将其加入到可见队列中
3)在cell移除的时候将可见队列中的控件加到复用队列中