我们可不可以设置ViewPager的预加载为0,不能解决问题
vp.setOffscreenPageLimit(0);
关键在于setUserVisibleHint(boolean isVisibleToUser)方法
/**
* Fragment预加载问题的解决方案:
* 1.可以懒加载的Fragment
* 2.切换到其他页面时停止加载数据(可选)
* Created by yuandl on 2016-11-17.
*blog:http://blog.csdn.net/linglongxin24/article/details/53205878
*/
- 初始化的时候去加载数据
- 在setUserVisibleHint()方法中设置加载数据方法,加载数据方法中设置检测方法,如果视图已经初始化而且视图对用户可见(getUserVisibleHint()为true),则加载数据
- 可选:当视图已经对用户不可见并且加载过数据,如果需要在切换到其他页面时停止加载数据,
azyLoadFragment是一个抽象类,可以作为BaseFragment,继承它。
(1).用setContentView()方法去加载要显示的布局
(2).lazyLoad()方法去加载数据
(3).stopLoad()方法可选,当视图已经对用户不可见并且加载过数据,如果需要在切换到其他页面时停止加载数据,可以覆写此方法