我目前使用的是recyclerviewlistadapter
我想知道什么是等效notifyDataSetChanged或者如何在添加值/记录后更新整个列表?
我正在使用这个方法,但是如果它没有刷新,它就不会更新。
初始化记录
mList = new ArrayList<>();
mList.add(new ModelClass();
mAdapter.submitList(mList);
创建新记录后的一些代码
mAdapter.submitList(null)
mAdapter.submitList(modifiedList)
我想回到RecyclerView.Adapter<VH>
和notifyDataSetChanged()
,这样我的问题就解决了。你觉得呢?
有多种方法可以达到相同的效果。
第一方式:
adapter.notifyItemInserted(itemIndex);
在这里,itemIndex是数组中要添加新元素的位置。这不会刷新回收者视图上的整个列表。
只是将这个元素添加到那个位置。
第二种方式:
arrayData.addAll(insertIndex, items);
adapter.notifyItemRangeInserted(itemIndex, items.size());
第三条道路:
adapter.notifyDataSetChanged();
就像我上面提到的,有多种方法可以在回收器视图中更新列表