ViewPage+Fragment 懒加载+只加载一次 SwipeRefreshLayout自动刷新
来源:互联网 发布:淘宝动漫 编辑:程序博客网 时间:2024/05/21 02:21
之前发表了一次,不知道怎么了找不到。重新发一次
因为ViewPager+Fragment加载时启动的方法有些复杂,所以单纯的setUserVisibleHint并不能去执行。
在这段代码中必须重写onResume方法
注意:重点来了
在这段代码中lz使用了SwipeRefreshLayout去自动刷新,在此处SwipeRefreshLayout开启线程去赋值,赋值的目的主要是去调用它自带的动画,有兴趣的同学可以看一下源码。然后使用它的监听器去加载网络数据
监听器的初始化代码,在此处请将监听器设为全局变量。
当网络请求访问结束后,记得要使用线程去将这个动画关闭。否则小圆圈会一直转不停的
走到这里运行之后可以发现懒加载已成功,但是每次进入Fragment时都会去加载一次,对于重要性不是很高的功能来说,这是不合理的,那么怎么去解决?
很简单,在Activity中设置ViewPager的缓存数量为当前Fragment的数量。那么为什么这种方法就可以实现?原理如下:
当viewpager第一次加载时,我们采用的懒加载,所以他的缓存只会在第一次加载结束之后才会缓存。我们将缓存数量设置为Fragment的数量,可以保证Fragment永远都不会被销毁,有兴趣的同学可以看一下ViewPager+Fragment的生命周期
1 0
- ViewPage+Fragment 懒加载+只加载一次 SwipeRefreshLayout自动刷新
- ViewPage Fragment 懒加载
- Android viewpager + fragment 的懒加载 只加载一次
- Fragment懒加载(只加载一次哦)
- SwipeRefreshLayout 下载加载以及自动刷新
- ViewPage加载fragment
- 使用viewpage加载fragment
- Android之切换Fragment只加载一次
- Android中的Fragment+Viewpage懒加载
- Viewpage + fragment 防止预加载
- viewpage+fragment禁止预加载
- ViewPage+Fragment取消预加载
- Android SwipeRefreshLayout实现下拉刷新,上拉加载、滑动加载(自动加载)和点击加载
- 页面加载之前自动刷新一次
- SwipeRefreshLayout+RecyclerView实现下拉刷新上拉自动加载
- SwipeRefreshLayout+RecyclerView实现下拉刷新上拉自动加载
- js控制的页面加载后只刷新一次
- fragment+viewpage设置不预加载页面
- 内存对齐,malloc内存对齐
- 在Eclipse中安装Zookeeper状态查看插件
- 什么是动态数据类型
- viewpager的简单实现
- Qt学习十一:Qt+VS练习一:Qt的UI布局和在VS中的配合
- ViewPage+Fragment 懒加载+只加载一次 SwipeRefreshLayout自动刷新
- 设计模式总览
- 使用BitmapShader实现简单绘图
- React Native 开发到上线记录(二)
- 一个清空/var/log/messages的脚本
- docker学习之(一):docker相关资料-- debian docker安装教程-常用资料导航
- 经典库函数实现
- JQUERY中prop和attr的区别
- 注册表更改win7的UAC方法