如何在 onResume() 上更新 RecyclerView 中的值?

Sar*_*ver 4 android

我正在设计一个新闻应用程序,在其中我在 recyclerView 中显示新闻文章。现在单击新闻文章时,我想更改其背景颜色以指示该新闻项目已被阅读。

为此,我首先在阅读新闻时更新与 Firebase 数据库中的新闻文章相对应的状态字段。然后我在我的回收器适配器中检查这个字段的值,如果状态改变了就改变背景。

但是,由于 recyclerView 的适配器是在片段的 onCreateView 中定义的,所以当我按下后退按钮时,更改不会立即发生。而是在重新打开应用程序时发生更改,因为当时调用了 onCreateView。那么如何更新片段的 onResume 中的适配器并相应地更新 recyclerView 呢?

nit*_*arp 5

覆盖该onResume方法并调用notifyDataSetChanged

@Override
public void onResume() {
    super.onResume();
    adapter.notifyDataSetChanged();
}
Run Code Online (Sandbox Code Playgroud)

在科特林:

override fun onResume() {
    super.onResume()
    adapter.notifyDataSetChanged()
}
Run Code Online (Sandbox Code Playgroud)