如何在显示前预加载片段?

Hon*_*ong 5 android fragment

在我的活动中,我有几个全屏片段,每个片段都从网络下载一些数据(使用异步任务)并将其显示给用户。这些片段一次显示一个。

更具体地说,每个片段都会从 sqlite 数据库中读取一些 url,并在将内容显示在列表中之前获取内容(如果有的话)。数据加载任务可以在OnCreate()函数中完成。

当我显示启动屏幕时,我想预加载所有片段(至少开始下载)。非常类似于viewpager 预加载其片段。

我想知道如何实现这一目标?我尝试在 Activity 的 OnCreate() 函数中初始化/创建所有片段,希望可以更早地调用片段的 OnCreate() ,但是片段的 OnCreate() 和 OnCreateView() 函数只有在片段创建后才会被调用。即将展示给用户。

Sas*_*_KP 0

Fragment的onActivityCreated(Bundle)告诉fragment它的activity已经完成了它自己的Activity.onCreate()。

因此,解决这个问题的方法是在创建片段之前初始化或创建或执行您想要预加载的内容,在您FragmentonActivityCreated(Bundle)

查看fragment的生命周期文档