2
我正在从事的应用程序正在从互联网加载新闻。在主Activity
我有一个RecyclerView
与选择的主题。所有内容均在onResume()
方法中加载和更新。原因是我每次回到Activity
时都想更新新闻的数量和所有这些活动的内容。我也有一个喜好Activity
。这是非常标准的。Activity.recreate()复制列表
在我的活动我有一个listener
:
SharedPreferences.OnSharedPreferenceChangeListener listener = new SharedPreferences.OnSharedPreferenceChangeListener() {
public void onSharedPreferenceChanged(SharedPreferences prefs, String key) {
recreate();
}
}
每当我去设置菜单和回我有我的RecyclerView
与改变的值,但我也得在列表中的每个项目的重复。
但是在我onResume()
方法我有几行代码:
sa.removeAllItemsFromList();
sa.notifyDataSetChanged();
sa.removeAllItemsFromList()
是我的方法做这个:siteList.removeAll(siteList);
。非常简单直接。所以问题是:为什么我得到一个重复的,我该如何解决它?
非常感谢您的评论。我会在未来测试它。虽然我仍然有一个问题。为什么不'removeAllItemsFromList()'工作?它不是应该删除所有的元素,而是创建新的元素吗? – Vendetta8247
你可以调用'siteList.clear()' –
谢谢你的建议,虽然在我的情况下它没有工作。我完全不知道为什么。我在我的应用程序中重新安排了活动周期,现在它似乎正常工作。再次感谢您的建议。他们很有帮助 – Vendetta8247