我有一个带有片段的主Activity,该片段具有从数据库检索的所有数据填充的Recyclerview。在此片段中,我有一个按钮,该按钮调用另一个活动以将对象插入到数据库中。
问题是当活动结束并返回到主活动时,Recyclerview不会显示我刚创建的新项。我尝试使用以下代码:
@Override
public void onResume() {
super.onResume();
adapterItem.addItem(MyApplication.getWritableDatabase().getAllItems());
listProjectsView.scrollToPosition(0);
}
函数 getAllItems 从 sqlite 检索所有数据。
在 Recyclerview 的 adapterItem 上,我得到了这个:
public void addItem(ArrayList<Item> listItems) {
this.listItems = listItems;
notifyItemInserted(0);
}
它“运行良好”。主要问题是当我在手机上切换到另一个应用程序,并返回到我的开发的应用程序时,onResume方法会打开并再次显示我的最后插入的内容,导致该项重复出现(如果我再次这样做,情况就会变得更糟)。
谢谢
HashSet
来排除重复元素。 - N J