RecyclerViewの部分的なデータ更新をどのように実現しますか?

RecyclerViewの部分更新は、次の方法で実現できます。

  1. 位置が変更されたことを通知する (notifyItemChanged)
// 在Adapter中的某个方法中调用
public void updateItem(int position, Data newData) {
    dataList.set(position, newData);
    notifyItemChanged(position);
}
  1. positionStartからitemCountまでの範囲のアイテムの変更を通知します。
// 在Adapter中的某个方法中调用
public void updateRange(int startPosition, int itemCount, List<Data> newDataList) {
    for (int i = 0; i < itemCount; i++) {
        dataList.set(startPosition + i, newDataList.get(i));
    }
    notifyItemRangeChanged(startPosition, itemCount);
}
  1. position番目に通知します。
// 在Adapter中的某个方法中调用
public void insertItem(int position, Data newData) {
    dataList.add(position, newData);
    notifyItemInserted(position);
}
  1. positionのアイテムが削除されたことを通知します。
// 在Adapter中的某个方法中调用
public void removeItem(int position) {
    dataList.remove(position);
    notifyItemRemoved(position);
}

上記の方法を使用すると、RecyclerViewの一部データを更新し、パフォーマンスとユーザーエクスペリエンスを向上させることができます。

bannerAds