【发布时间】:2013-08-20 17:50:20
【问题描述】:
我正在使用包含 3 个片段的 ViewPager,每个片段加载一个列表。问题是当应用程序第一次运行并且我滑动到下一个片段时,这个片段需要一些时间来加载(大约 2 秒),然后它的视图才可见。这是一种非常奇怪的行为。我想要的只是一旦应用程序启动,ViewPager 中的所有片段都应该为用户准备好,所以当他们刷过片段时,没有等待时间。我怎样才能做到这一点?
【问题讨论】:
-
您使用的是 FragmentPageAdapter 还是 FragmentStatePageAdapter?
-
您可以考虑在活动(或寻呼机)中缓存片段列表适配器。这将防止适配器在每次页面更改时重新加载。
-
@Delyan 我使用 FragmentPagerAdapter
-
“这个片段需要一些时间来加载(大约 2 秒)才能看到它的视图” - 听起来你应该抛出一个加载指示器来弥合差距。虽然,如果在这 2 秒延迟期间有什么东西阻塞了 UI 线程,您应该改为修复它。在这种情况下,下面的答案不会真正有帮助,因为它只是将延迟转移到创建
ViewPager的时间。
标签: android android-fragments android-viewpager