ViewPager预加载
ViewPager有一个 “预加载”的机制,默认会把ViewPager当前位置的左右相邻页面预先初始化,它的默认值是 1(看源码),这样做的好处就是ViewPager左右滑动会更加流畅,但是预先加载用户没有看到的页面的数据,会花费用户的一定的流量,所以就有了禁止ViewPager的“预加载”,节省用户流量。
![](https://i-blog.csdnimg.cn/blog_migrate/8abfaacea3dddfe1032281136d4a54f4.png)
通过看上面ViewPager的部分源码可知,
DEFAULT_OFFSCREEN_PAGES 这里就定义了默认值是1, 所以有的人说调用ViewPager的
setOffscreenPageLimit(int limit),来设置ViewPager预加载的数量,但通过这个方法设置的预加载的数量大于1才有效,也就是说,这种方案是不能禁掉预加载的,只能改变预加载的数量,如下图ViewPager源码:
![](https://i-blog.csdnimg.cn/blog_migrate/121be5532b0e54252bc8973ef614e07f.png)