如果我需要显示来自Fragment中的API的数据(使用AsyncTask),让我们说一个RecyclerView中的项目列表,我相信它不应该在onCreate()中完成或onCreateView()从理论上讲,视图元素正在初始化,如果对API的调用更快,则可能无法使用。我是对的吗? (我认为,在不到Android创建视图的时间内,从API获得响应是不可能的)。
有onActivityCreated()和onStart(),但我仍然对父Activity调用它们感到困惑。
我想避免的是重新加载数据(调用API),如果没有必要,例如因为方向改变或者在可能的&点击后退按钮后返回到此活动#34;下一个"活性。
感谢。
答案 0 :(得分:0)
如果是你的第一个"窗口" (活动或其他)我知道的唯一方法是显示加载文本,图像等。
如果它不是您的第一个视图,您可以在另一个窗口中加载您的数据,并在用户到达视图时将其存储到以后使用以显示信息。
您可以在onCreate
,onStart
左右加载,但正如您所说,您可能没有时间下载信息,所以再次显示{{1页面或您的数据到来时想要的任何内容。
为避免初始化错误,请在初始化元素后调用loading
。为了避免在应用程序打开时多次调用API保存您的数据,这取决于您的应用程序要求