【发布时间】:2021-10-05 18:33:43
【问题描述】:
我有一个带有主要片段的 Android 应用程序,您可以使用导航图进行导航。打开主片段时加载数据。问题是当我从它导航并返回时再次加载数据,因为片段被重新创建。怎么可能只加载一次数据?
【问题讨论】:
-
我们需要查看一些代码才能知道出了什么问题。这实际上取决于备份数据的存储库类型。
-
如果您的加载数据的函数在
onCreateView中或者在创建新视图后调用的生命周期方法中,您可以尝试将其移动到诸如onCreate之类的方法中 -
但是每次都会重新创建片段。有没有办法知道它是第一次创建还是重新创建?
-
您可以将数据缓存在视图模型中,这样您就不需要再次加载数据了。
标签: java android kotlin viewmodel