我在应用程序中有Fragment
A,B。我已经使用API调用在片段A上设置了Recyclerview
。我在片段B中有一个方法deleteEntry()
,由于哪一项从API数据中删除,删除项目后我来到片段A.
这是API调用deleteEntry
后移动到Fragment A
CurrentStatus status=new CurrentStatus();
Busy table=new Busy();
tx=fm.beginTransaction();
tx.replace(R.id.frame,new ChooseTab());
tx.detach(status);
tx.attach(status);
tx.detach(table);
tx.attach(table);
tx.commit();
但是在我转到Fragment A之后,即使API再次调用以显示已修改的API数据同时替换Fragment,仍然可以看到RecyclerView项目。我需要手动再次调用相同的API进行刷新,然后Item消失。登记/> 如何解决这个问题?
答案 0 :(得分:1)
您需要从已传递给recyclerView适配器的列表中删除该条目,然后在适配器上调用notify,如下所示:
list.remove(position); // to remove the item from the list
recyclerAdapter.notifyItemRemoved(position); // to notify the adapter
其中position是要删除的列表中项目的索引。 在此之后,该项目将从recyclerView中删除,不再可见。