- MainActivity 有一个带有项目列表的
Recyclerview
。 - OnClick 其中一个项目
UpdateActivity
启动,可以更改该项目 - 通过单击 BackButton 进行导航时,我只想更新此特定的单个
RecyclerViewItem
实现这一目标的最干净方法是什么?我应该在哪里更新该项目?
如果我在重写的 BackButton 操作中使用 Intent 并从那里启动 MainActivity
,则 RecyclerView
为空,我需要再次加载所有项目。
我可以将所有加载的项目与位置信息一起传递到 UpdateActivity
并更新 UpdateActivity 中的项目,但如果有更简洁的方法,我希望避免将所有数据传递给此 Activity 在 MainActivity
中解决这个问题。
最佳答案
然后通过使用 startActivityForResult() 期待结果来启动更新 Activity ,并在按下后退按钮的同时完成 UpdateActivity 并发送 Intent 。然后在 MainActivity 中接收 Intent 时尝试使用 RecyclerView 适配器的adapter.notifyItemInserted() 方法并更新它。
尝试使用此方法
adapter.notifyItemInserted(); //in case of addition
adapter.notifyItemChanged(position); // in case of any updation
关于java - 通过后退按钮从其他 Activity 更新 Recyclerview onResume 的一项的正确方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58974503/