列表点击排序,卡顿现象

我要实现的功能是,点击后一个按钮后对数据进行排序,在ListView呈现出来,但是实时排序会有卡顿的现象出现,一开始我以为是数据排序的卡顿,但是实际数据不大,也就20条左右,而且用的Collection.sort的排序,结果发现似乎是adapter的刷新问题造成的卡顿,因为是两个表,并且点击后都要刷新,所以有点卡,在这之后还有一个有4个list同时刷新的需求,更加卡了,4个adapter.notifyDataSetChange运行,ListView似乎没有其他的刷新方法,请问有什么办法解决?(如果是换控件的话待定,因为有蛮多逻辑的,挺大工程量)

clipboard.png

排序后,将缓存list添加进来,然后就是4个adapter更新,并且记录当前的刷新key是啥,用以点击其他排序按钮进行排序后更新ui,排序按钮有9种,
阅读 2.6k
1 个回答

感觉可试一下RecyclerView对item的回收有了很大的优化,并且还有一些局部刷新分方法,如果经常更新的话,用RecyclerView比较好,并且写起来也简单。
推荐一篇RecyclerView的文章里面还有RecyclerView和ListView缓存机制对比的文章的链接
https://zhuanlan.zhihu.com/p/...

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题