我有recycleview,我在其中实现了搜索功能。并且每个项目都添加了 onClick,它通过以下代码从列表中删除项目。
holder.del_btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
int newPosition = holder.getAdapterPosition();
contactListFiltered.remove(newPosition);
notifyItemRemoved(newPosition);
notifyItemRangeChanged(newPosition, contactListFiltered.size());
});
它适用于普通列表,但当搜索任何项目时,在过滤结果上,onclick 侦听器可能会由于视图重叠而随机删除。所以我用下面的代码将 onclick 侦听器传递给活动
mSolved.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
// send selected contact in callback
listener.onSolved(contactListFiltered.get(getAdapterPosition()));
}
});
public interface FRoomAdapterListener {
void onSolved(Districtpost contact);
}
在我正在使用的活动中
public void onDelete(Districtpost contact) {
int newPosition = holder.getAdapterPosition();
contactListFiltered.remove(newPosition);
notifyItemRemoved(newPosition);
notifyItemRangeChanged(newPosition, contactListFiltered.size());
});
这肯定会引发错误。我该如何解决这个问题。提前致谢。
哈士奇WWW
慕的地8271018
相关分类