gpt4 book ai didi

java - 从 RecyclerView 中删除最后一项不起作用

转载 作者:行者123 更新时间:2023-12-01 16:21:00 26 4
gpt4 key购买 nike

我有回收者 View

用户可以在 RecyclerView 中删除或添加项目。

一切正常,直到 RecyclerView 达到 1 个元素。

当我需要删除最后一项时,它没有被删除。日志显示该项目已从 ArrayList 中删除,但仍显示在 RecyclerView 中。

删除最后一项时还需要什么吗?

代码:

public void removeItem(int adapterPosition){
arrayList.remove(adapterPosition);
Log.. ///
}

adapterPosition 为 0 时,不会删除该项目。

我什至在方法中保留了一个断点,但它仍然显示adapterPosition为0。

最佳答案

您需要调用notifyItemRemoved以通知RecyclerView该项目已被删除。这对于每次删除/删除都是必要的,而不仅仅是最后一次,但如果您不这样做,有时可能会出现巧合。

也就是说,您的 removeItem 方法(假设它位于您的 Adapter 上)应如下所示:

public void removeItem(int adapterPosition){
arrayList.remove(adapterPosition);
notifyItemRemoved(adapterPosition);
Log.. ///
}

关于java - 从 RecyclerView 中删除最后一项不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62279905/

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