Fragment取消(禁止)预加载 ,同时也实现了各个tab之加载一次不会在重复加载

 

 

 

主要实现的

 Fragment取消(禁止)预加载 ,同时也实现了各个tab之加载一次不会在重复加载里面

我们发现Fragment中有一个setUserVisibleHint(boolean isVisibleToUser)方法,这个方法就是告诉用户,UI对用户是否可见,那么我们在这里去加载数据会怎么样呢? 

 

日志


因为ViewPager会加载好多Fragment,为了节省内容等会在Fragment不可见的某个时候调用onDestroyView()将用户界面销毁掉但是Fragment的实例还在,所以可能第一次加载没有问题, 
但是再次回到第一个Fragment再去加载的时候就会出现UI对用户可见但是视图还没有初始化。
 

 

LazyLoadFragment是一个抽象类,可以作为BaseFragment,继承它。

(1).用setContentView()方法去加载要显示的布局

(2).lazyLoad()方法去加载数据

(3).stopLoad()方法可选,当视图已经对用户不可见并且加载过数据,如果需要在切换到其他页面时停止加载数据,可以覆写此方法

具体操作代码里面有,也有一些他较好的博客,我也是参观里面然后修改的

demo地址

https://download.csdn.net/download/xxb52306/11072717

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值