嗨我有一个recyclerview
,其中有checkboxes
。我有一个搜索过滤器,我正在搜索并在顶部搜索项目。现在的问题是当我在过滤后点击checkbox
后,位置变为0并且列表的第一项被添加到数据库而不是搜索项目。
我有链接中给出的搜索过滤器.. Android - Implementing search filter to a RecyclerView
我想要的结果是当我在过滤正确位置后选择一个项目时必须检查recyclerview
不应该使用旧列表。
这是我的复选框onCheckedChangedListerner代码:
holder.checkBox.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
itemsPojo = itemList.get(position);
if (isChecked) {
checked++;
noOfItems.setText(String.valueOf(checked));
OrderTable orderTable1 = new OrderTable(storeID, storesPojos.getPhone(), storesPojos.getAddress(),
add, itemsPojo.getProduct(), itemsPojo.getManufacturer());
dbHelper.insertItemsInOrderTable(orderTable1);
} else {
Log.e("Coming here...////","!!!@@@@@###$$$%%%%^^^&&&&&&***(((");
checked--;
noOfItems.setText(String.valueOf(checked)); dbHelper.deleteItemFromOrderTable(itemsPojo.getItemCode(),storeID);
}
}
});
这里在检查复选框时我正在将项目插入数据库..会发生什么是假设我正在搜索某个第100项并在搜索该项目之后搜索过滤器过滤并在顶部显示该项目并且我正在检查它。这里适配器的位置从100变为0,一旦我清除了过滤器,第0项就会被检查而不是第100项......如果我不清楚,我很抱歉。