处理listview卡顿,优化
1.项目最先用Scollview 嵌套 listview ,因为需要大量加载下一页商品数据到listview
,每次调用 listview 的adapter 的notifydataChanged()会刷新列表所有的商品,导致到
页面出现卡顿情况,
2.后来改用Scollview 嵌套Recyclerview,发现卡顿情况没有改变,
3.换成NetScollview+Recyclerview,卡顿情况没有改变,而且打算调用 Recyclerview的
adapter的notifyItemRangeInserted 在加载下一页的时候进行局部刷新即可,但实际,无
法进行刷新数据,只能调用原来的notifyDataChanged进行刷新
4.问了一些朋友,建议使用 Recyclerview 嵌套Recyclerview去代替NetScollview 嵌套
RecyclerView,实际换了之后,卡顿情况得到解决,但是,因为商品列表在内层的
Recyclerview,所以,假如,加载下一页数据的时候,只调用内层Recyclerview的adapter
的notifyItemRangeInserted 是不能在界面实现数据刷新的情况的,假如调用外层的
Recyclerview的adapter的notifydataChanged,也是要整个商品列表都刷新,也没有达到局
部刷新的目的
5.最后,根据网上网友的意见,在Recyclerview加一个headview去加载Scollview上面的内
容,再在加载下一页数据的时候调用notifyItemRangeInserted 进行局部刷新,滑动卡顿
情况得到解决,局部刷新目的也达到了