我知道默认情况下PagerAdapter
只加载当前、下一页和上一页。有没有办法改变它,所以它会加载每一页?谢谢!
问问题
7961 次
4 回答
45
如果您有N
页面,则可以使用setOffscreenPageLimit(N-1)
,以便它将所有页面保留在内存中。
于 2012-10-03T10:04:52.667 回答
1
我不确定这是一个答案,但是适配器的整个概念(也适用于列表/网格等)是您不会一直将所有视图加载到内存中,但它只会膨胀可见的内容. 考虑一个包含 10000 个项目的 ListView,如果它尝试将它们全部加载,应用程序将会崩溃。
文档在某处指出,如果您知道要显示多少页面和内容,“setOffscreenPageLimit”会很有用且速度更快。如果您知道要显示的信息并且重量不重,“setOffscreenPageLimit”实际上会提高您的性能,因为视图只会膨胀一次。
于 2012-10-10T09:42:26.127 回答
0
我不确定这是一个答案,但适配器的整个概念(也适用于列表/网格等)是您不会一直将所有视图加载到内存中,但它只会膨胀可见的内容.
考虑一个包含 10000 个项目的 ListView,如果它尝试将它们全部加载,应用程序将会崩溃。
使用 HorizontalScrollView,您会将所有视图加载到内存中。
于 2012-10-02T11:48:53.687 回答
-8
我认为不可能一次加载所有页面。您应该重新设计代码。
于 2012-10-02T11:49:53.797 回答