这就是我在我的应用程序中拥有的
一切都按预期工作,但有一件事我不知道为什么会发生。
当我转到 fragment #2 以将数据插入或更新到房间数据库,然后使用(顶部或底部)后退按钮返回 fragment #1 时, fragment #1 不会重新加载并且数据不会更改(更新),直到我重新加载数据.
在其他情况下,当我在同一 fragment 中插入或更新数据时,列表会立即更改。
我必须在同一个 fragment 上进行插入和更新操作吗?
我不能在其他 fragment 中执行此操作,当我返回列表 fragment 时,我发现数据已更新?
请记住,它就像我希望的那样工作,但在某些时候我真的不知道它不再是了!!
最佳答案
搜索后,问题是我从包含 的存储库创建实例房间 数据库 道 , 所以所有 实时数据 删除了与数据库的连接
解决方案是使用单例模式,这意味着在包含我的 fragment 的 Activity 的整个生命周期中只使用一个存储库实例和一个房间数据库实例。
您可以通过多种方式做到这一点,我建议您使用 依赖注入(inject)
我使用的工具是刀柄 Dagger here here
关于android - 刷新 fragment 回到上一个 fragment ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61070995/