列表复用产生的一些小问题及其解决方案
一.列表复用可能出现的问题有哪些?
1.UI布局错乱
2.数据显示不正确
3.滑动卡顿
1.问题描述和分析:
RecyclerView设置数据源时加入了if判断,导致item重用时,没有进入if判断.继续复用原来设置的UI属性.
举个例子:
看到红框框了吧 :满减券 或者代金券
看实例代码:
if 满足条件 1 设置为 代金券 else 满减券
一定要 if 和 else 成对出现!!! 否则就会有复用问题,显示不正确。
2.在写列表的过程中还想到一个问题:
在后台返回的数据集合中
如果某一条数据的某一个字段是空,就要隐藏这个控件
举个列子 :
后台返回了10条数据。假设第五条的 某个字段的值是空,就要隐藏代金券这个控件
3.在后期维护中,列表中某一个字段,后台没有返回了,返回null
那么很可能你的APP就会崩溃
然后这时候你就会想
那么判断是不是为nul保护一下就好了
为null直接返回好了
然后你会发现 会有问题的,这是一开始写列表经常犯得错误
因为return 直接返回了
下面的代码都不执行了
所以就会有显示错误
这样的话 逻辑要稍微改一下
如果为null 的 话 就吧这个控件影藏 不要写return