Fragment懒加载数据
来源:互联网 发布:淘宝手机版订单回收站 编辑:程序博客网 时间:2024/05/21 09:59
Fragment懒加载可解决如下:一个Activity里面可能会以viewpager(或其他容器)与多个Fragment来组合使用,而每个Fragment都需要去加载数据,或从本地加载、或从网络加载,那么在Activty刚创建的时候就会初始化大量的资源,会变得卡慢。Fragment可见时,才执行加载数据的操作,即Fragment的懒加载,setUserVisibleHint判断是否可见。
public abstract class LazyFragment extends Fragment { 14. protected boolean isVisible; 15. /** 16. * 在这里实现Fragment数据的缓加载. 17. * @param isVisibleToUser 18. */ 19. @Override 20. public void setUserVisibleHint(boolean isVisibleToUser) { 21. super.setUserVisibleHint(isVisibleToUser); 22. if(getUserVisibleHint()) { 23. isVisible = true; 24. onVisible(); 25. } else { 26. isVisible = false; 27. onInvisible(); 28. } 29. } 30. 31. protected void onVisible(){ 32. lazyLoad(); 33. } 34. 35. protected abstract void lazyLoad(); 36. 37. protected void onInvisible(){} 38.} public class OpenResultFragment extends LazyFragment{ 02. // 标志位,标志已经初始化完成。 03. private boolean isPrepared; 04. 05. @Override 06. public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { 07. Log.d(LOG_TAG, "onCreateView"); 08. View view = inflater.inflate(R.layout.fragment_open_result, container, false); 09. //XXX初始化view的各控件 10. isPrepared = true; 11. lazyLoad(); 12. return view; 13. } 14. 15. @Override 16. protected void lazyLoad() { 17. if(!isPrepared || !isVisible) { 18. return; 19. } 20. //填充各控件的数据 21. } 22. 23.}
阅读全文
0 0
- Fragment懒加载数据
- fragment 的懒加载数据
- Fragment加载数据
- ViewPager+fragment延时加载,懒加载(数据缓存)
- Fragment懒加载,当页面可见时加载数据
- android viewpager使用Fragment懒加载,滑到当前fragment才进行数据加载
- android fragment 延迟加载数据
- Android Fragment延迟加载数据
- Fragment预加载+数据初始化
- Android Fragment切换 和 数据懒加载的分离处理
- Android ViewPager + Fragment 懒加载数据 可操作控件版
- ViewPager加载Fragment懒加载
- Fragment中的懒加载
- Fragment懒加载
- fragment懒加载
- Fragment的懒加载
- Fragment的懒加载
- Fragment实现懒加载
- 【WPF】右下角弹出自定义通知样式(Notification)——简单教程
- ping程序的实现
- 扫雷(静态)
- Python使用MySQL数据库(新)
- c#拼图小游戏
- Fragment懒加载数据
- linux app
- 去除<input type='file'>右边路径方法
- Vuex 模块化实现待办事项的状态管理
- Echarts的研究(二)
- 下拉菜单中自动亮度调节
- 文章标题
- 湖南中医药大学2017年集训队第四场选拔赛-Problem F: Virtual Friends
- 关于js打包