Android ViewPager+Fragment懒加载的一次
2020-09-11 本文已影响0人
可乐_JS
今天改了下项目中ViewPager+Fragment的懒加载实现,简单记录下
- Activity中的使用:实例化Fragment的时候在构造中传入是否需要在Fragment初始化完成后直接加载数据的参数
homeFragment = new HomeFragment(true);//是否需要初始化完成加载数据
fragments.add(homeFragment);
vp.setAdapter(fragmentPagerAdapter);
- BaseFragment中抽出是否需要初始化完成直接加载数据的参数 即:isNeedInitEdLoadData
public abstract class BaseFragment<T extends IBaseP> extends Fragment {
/**
* 是否需要初始化完成后加载数据
*/
protected boolean isNeedInitEdLoadData;
public BaseFragment(boolean isNeedInitEdLoadData) {
this.isNeedInitEdLoadData = isNeedInitEdLoadData;
}
- HomeFragment中在initData方法中使用isNeedInitEdLoadData参数控制懒加载,在需要的时候调用loadData方法加载数据即可
@Override
protected void initData() {
if (!isNeedInitEdLoadData) {
return;
}
loadData(true);
}
public void loadData(boolean isRefresh) {
mPresenter.getYuJinList(isRefresh);
}