如何使PagerAdapter加载所有页面

时间:2012-10-02 11:45:18

标签: java android android-viewpager fragmentpageradapter


我知道默认情况下PagerAdapter只会加载当前页面,下一页面和上一页面。 有没有办法改变它,所以它会加载每一页? 谢谢!

4 个答案:

答案 0 :(得分:28)

如果您有N页,则可以使用setOffscreenPageLimit(N-1),以便将所有页面保留在内存中。

答案 1 :(得分:1)

  

我不确定这是一个答案,但是适配器的整个概念(也适用于列表/网格等)是你没有所有的视图一直加载到内存中,但是它膨胀了只看到了什么。   考虑一个包含10000个项目的ListView,如果尝试加载它们,应用程序就会崩溃。

如果你知道要显示多少页面和内容,那么文档会指出“setOffscreenPageLimit”可以更有用,也更快。如果您知道要显示的信息且重量不重,“setOffscreenPageLimit”实际上会提高您的性能,因为视图只会膨胀一次。

答案 2 :(得分:0)

我不确定这是一个答案,但是适配器的整个概念(也适用于列表/网格等)是你没有所有的视图一直加载到内存中,但是它膨胀了只有那些可见的。

考虑一个包含10000个项目的ListView,如果尝试加载它们,应用程序就会崩溃。

使用Horizo​​ntalScrollView,您可以将所有视图加载到内存中。

答案 3 :(得分:-6)

我认为不可能一次加载所有页面。您应该重新设计代码。