gpt4 book ai didi

android - 从 RecyclerView 中移除项目并将其插入到另一个位置

转载 作者:太空狗 更新时间:2023-10-29 14:35:40 26 4
gpt4 key购买 nike

我想使用 positiononBindViewHolder 中的 RecyclerView 中删除项目。此位置参数是屏幕上可见 View 的位置,而不是 ArrayList 中项目的实际位置。如果我想从列表中的这个位置删除这个项目并将它移动到屏幕上实际上不可见的 ArrayList 的另一部分(我不知道 onBindViewHolder 位置)我实际上可以以某种方式更新它使用 notifyItemSetChanged() 列出,或者唯一正确的方法是调用 notifyDataSetChanged())?

这有点复杂 RecyclerView 具有多个标题和项目变体(我在 Adapter 中使用 5 个 ViewHolder)。这个适配器的主要目的是改变项目的位置,每次都复制它们。它类似于联系人列表部分。

我的问题的简单表示:

enter image description here

最佳答案

正确的做法是

list.remove(position);
notifyItemRemoved(position);
list.add(newposition,item);
notifyItemInserted(newposition);

OnBindViewHolder 的位置是列表中项目的位置,这就是您填充 View 的方式

关于android - 从 RecyclerView 中移除项目并将其插入到另一个位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56608133/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com