点击物品时如何将recyclerview物品位置更改为0,将其他物品更改为下一个位置

时间:2018-12-24 09:43:31

标签: java android

Recyclerview的项目在改变位置,但随机变化,我尝试了下面给出的代码,并尝试了许多但没有起作用。我只想在单击该项目时将Recyclerview项的位置更改为位置“ 0”。

例如,当我单击“ 4”位置的项目时,我得到了5个项目的ArrayList,然后应将该项目的位置更改为“ 0”,并将其余项目更改为1,2,3,4。

我想要这样 点击之前 项目0-位置1 项目1-位置2 项目2-位置3 项目3-位置4 项目4-位置5

点击后 项目3-位置1 项目0-位置2 项目1-位置3 项目2-位置4 项目4-位置5

Collections.swap(ArrayList,Position,0); notifyItemMoved(Position,0);

项目将位置更改为“ 0”,但仅在“首次点击”下有效,此后位置仅随机更改顶部项目。

1 个答案:

答案 0 :(得分:0)

在适配器中添加此功能,并在点击事件中调用此功能

public void moveToTop(List<T> items, int pos){
    if(pos>=0){
        items.add(0, items.remove(pos));
        notifyDataSetChanged();
    }
}