Android ViewPager 取消预加载

强颜欢笑 提交于 2019-12-05 18:22:36

        Android 新引入的Fragment加入了Viewpager这样的一个组件。至于该控件的功能在这里就不说了。这篇文章主要解决fragment viewpager预加载的问题。

默认的viewpager是会预先加载下一个fragment的控件的,可以通过setOffscreenPageLimit(int limit) 来设置要提前加载的fragment。即是说当limit等于5

的时候,打开第一个fragment的时候就相当于同时打开了其他的4个fragment了。这样切换的时候将会非常流畅。

        但是,当每个fragment都需要去联网加载网络数据或者做一些耗时的操作,而且有其他的fragment并不是必须的,用户不一定会打开。这样的话如果还

预加载的话将会浪费资源,用户体验也不好。虽然可以通过setOffscreenPageLimit(0)来设置不提前预加载,但这样的设置没有效果。通过研究ViewPager的

源码,可以设置该类默认的DEFAULT_OFFSCREEN_PAGES = 0,来预防预加载。

下面是我整理的android-support-v4.jar,兼容了所有新版本和旧版本。

http://pan.baidu.com/s/1dDCEAlF

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!