在我的应用程序中,图像显示在recyclerview的cardview内部。 有两个元素,一个是imageview,另一个是Textview,它显示图像位置,即recyclerview中的卡片位置。
我已经实现了onRowMoved()的拖放功能 这是代码:
@Override
public void onRowMoved(int fromPosition, int toPosition) {
if (fromPosition < toPosition) {
for (int i = fromPosition; i < toPosition; i++) {
Collections.swap(images, i, i + 1);
}
} else {
for (int i = fromPosition; i > toPosition; i--) {
Collections.swap(images, i, i - 1);
}
}
notifyItemMoved(fromPosition, toPosition);
}
但是当发生拖放时,我必须更新纸牌数 我尝试最后在onRowMoved()中调用notifyItemRangeChanged(),但是从此方法进行拖放操作并不顺利,这意味着当我拖动卡并将其移动时,卡会自动掉落,并且卡数会由notifyItemRangeChanged()更新
将卡片拖放到最后一个位置后,将无法滚动卡片。
如果我不使用onRowMoved()中的notifyItemRangeChanged()方法,则不会发生此问题。
所以任何人请告诉我如何更新卡计数位置。