android - notifyDataSetChanged 与 notifyItemInserted

标签 android android-recyclerview

如果我们使用这两种方法来告诉适配器您指向的数据已更改,我很困惑,那么它们之间有什么区别。

最佳答案

notifyDataSetChanged() 可以被认为是一个“主要”变化。您是在告诉适配器数据集中的所有内容 都已更改,因此它应该重新绑定(bind)每个子项。

notifyItemInserted()(以及其他方法,如 notifyItemRemoved() 等)都可以视为“小”更改。您是在告诉适配器数据集发生了哪些变化,这样它就可以执行优化(比如只重新绑定(bind)受影响的子项)。

值得注意的是,默认情况下,使用“次要”更改方法还会为您提供漂亮的动画,这使用户更容易看到列表中发生的更改。

关于android - notifyDataSetChanged 与 notifyItemInserted,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48895259/

相关文章:

android - 如何检测TextView是否包含SpannableStringBuilder

java - Android:我想让recyclerView处于横向模式,所有应用程序处于纵向模式

android - 从 RecyclerView.Adapter 中删除项目后,RecyclerView.ItemDecoration 不会更新

android - 使用 Sugar ORM 填充 RecyclerView

android - 取消时未调用 Facebook Android SDK 3.0 回调

android - 如何监控 SIM 状态变化

java - 安卓安装程序

android - 如何使用 robolectric 用额外的数据测试开始的 Intent

android - RecyclerView 项目装饰的负边距

android - 点击 Facebook Messenger 聊天项目动画