[英]How to save state of fragment with BottomNavigationBar?
我有带有五个选项卡的 BottomNavigationBar。 在那个片段中,我正在从服务器加载数据。 我的问题是 Fragment 每次都会在更改选项卡上加载数据。 我不想每次都加载数据。
我知道可以使用onSaveInstanceState()
,但保存少量数据很有用。
还有一件事,应用程序中有所有碎片,所以无法为我的问题找到任何解决方案。 任何帮助,将不胜感激
主要活动:
private boolean loadFragment(Fragment fragment) {
if (fragment != null) {
getSupportFragmentManager()
.beginTransaction()
.replace(R.id.fragmentContainer, fragment)
.commit();
return true;
}
return false;
}
您是否使用 MVVM 架构模式编写应用程序? 如果是这样,我认为您可以使用Shared ViewModel
。
Android 文档。 在片段之间共享数据
Stack Overflow:使用新的架构组件 ViewModel 在片段之间共享数据
我认为这可能会对您有所帮助。 如果您在 ViewModel class 中加载数据,即使您的应用程序停止,您也可以在所有片段中使用它您不必再次加载它。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.