我的RecyclerView
(初始状态)中有5个项目:
如果有一个产品,我会展示一个简单的动画,然后将产品推到RecyclerView
的顶部。例如,如果产品4具有特色,那么订单将变为:
我想将项目推到RecyclerView
的顶部而不修改其他项目的顺序,如下所示。
这是我的功能。
private void pushSelectedProductToTop(final int selectedProductPosition) {
final Handler handler = new Handler();
handler.postDelayed(new Runnable() {
@Override
public void run() {
Collections.swap(currentProductListResponseRecyclerView.getProducts(), selectedProductPosition, 0);
productsAdapter.notifyItemMoved(selectedProductPosition, 0);
}
}, 1000);
}
提前致谢。
答案 0 :(得分:1)
你想移动"产品4"到列表的顶部。这样做:删除"产品4" (position == 3)使用remove
。见remove(int index)
。然后使用add
在0位置插入项目。请参阅add(int index, E element)
。
然后,您可以拨打productsAdapter.notifyItemMoved(selectedProductPosition, 0)
。