【问题标题】:How can I save and restore fragment state in bottom navigation material design?如何在底部导航材质设计中保存和恢复片段状态?
【发布时间】:2020-09-03 11:47:46
【问题描述】:

底部导航片段中存在其他片段,并包含来自服务器的数据!数据似乎在那里,因为它的加载速度比以前快,但视图被破坏并再次加载延迟了进程。

【问题讨论】:

  • 我建议您将文档页面链接到您正在使用的确切导航片段,或者在问题中包含一些代码,以便其他人可以更好地回答您的问题。

标签: java android web mobile


【解决方案1】:

好吧,当您加载片段时,您需要在再次发出网络请求之前检查数据是否已经存在。

假设您在“onCreateView”方法上调用网络。您的班级中有一个全局变量。

class YourClass{
var someVariable = 0
...
//here your call network on "onCreateView" method

someVariable = callingNetWork.getValueFromNetWork()

}

onCreateView 在片段生命周期中被调用,你无法控制它会被调用多少次。所以你需要检查是否已经有数据。你需要这样的逻辑:

if( someVariable == 0) { //Has not been modiefied yet
someVariable = callingNetWork.getValueFromNetWork()
}
//Don't need an else, if it's not equal to 0, you have already called the networkd and stored the value

【讨论】:

  • 谢谢大哥!只是一个小误会问题!
猜你喜欢
  • 2021-08-05
  • 1970-01-01
  • 2017-08-04
  • 2019-12-02
  • 1970-01-01
  • 1970-01-01
  • 2022-11-07
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多