首页 > 解决方案 > 如果可以的话,使用更具体的更改事件总是更有效。依靠 notifyDataSetChanged 作为最后的手段。回收视图

问题描述

将 android studio 更新为 arctic fox 后,我收到此警告。但我不知道通知数据更改的有效方法是什么。在我的代码中,我从网络调用填充适配器,然后我通知数据集更改,但编译器给了我这个:

如果可以的话,使用更具体的更改事件总是更有效。依靠 notifyDataSetChanged 作为最后的手段。回收视图

编辑问题:希望我们使用

DiffUtil文档

而不是 notifyDataSetChanged() 因为它更快。在medium上查看这篇文章。

标签: androidandroid-recyclerviewandroid-studio-arctic-fox

解决方案


这意味着如果您需要在 recyclerview 中一次更改整个项目列表,请使用notifyDataSetChanged().

如果您需要更改特定项目,那么最好使用notifyItemChanged(position)它,这样它就不会刷新和重新绑定整个数据集,如果数据集很大,这会影响性能。

所以这只是一个正常的建议或警告,没什么好担心的。:)


推荐阅读