Android-PullToRefresh实现进入自动刷新
2015-07-08 18:55
591 查看
PullToRefreshScrollView实现自动刷新
查看官方源码 链接Github 地址源码图片:
目的:
使用Android-PullToRefresh的PullToRefreshScrollView,想在第一次进入的时候显示正在加载设置了setRefreshing(true);但是他没有加载数据发现api 上 有两个方法满足需求一个是:
public void setRefreshing(); /** * Sets the Widget to be in the refresh state. The UI will be updated to * show the 'Refreshing' view. * * @param doScroll - true if you want to force a scroll to the Refreshing * view. */
我果断使用第一个方法发现不行 ,后来发现群上其他的人在做网易新闻客户端时,处理过这个问题。但是也不是很好的处理办法,
new Handler().postDelayed(new Runnable() { @Override public void run() { mPullToRefreshScrollView.setRefreshing(); } }, 3000);
但是这不是最好的处理办法,我把源码翻遍,也只得到一些还不知道是否正确的结论,是说还未获取到顶部下拉刷新的高度,适当的延时即可。
因为我的项目中我使用的是androidannotations 开发,所以,我结合以上的思路,自己修改了我的代码逻辑,实现如下
@UiThread(delay = 1000) void setRefrsh() { mScrollView.setRefreshing(true); } @Override public void onResume() { super.onResume(); setRefrsh(); }
需要注意的是需要 实现
mScrollView.setOnRefreshListener(new PullToRefreshBase.OnRefreshListener<ScrollView>() { @Override public void onRefresh(PullToRefreshBase<ScrollView> refreshView) { getUserInfo(); } });
要在获取数据完成后再次调用 :
mScrollView.onRefreshComplete();
即可实现!
相关文章推荐
- 初学_Android4高级编程-8 share preference&文件&状态保存
- Android第四十三期 - 为自己的App支持emjo表情
- Android(java)学习笔记119:继承中父类没有无参构造
- Android中Layout转成Java代码
- Android Studio针对.9图片报Can't have more than one mark
- 开始使用Android Sutdio(五)高效快捷的使用AS
- Android 基本事件
- Android(java)学习笔记118:类继承的注意事项
- Android中的进程和pid
- 【第一篇】学习 android 事件总线androidEventbus之sticky事件的传递
- Android的string.xml中使用html与变量
- Android 百度地图开发之地图定位
- Android使用TextureView播放视频
- Android使用TextureView播放视频
- Android自定义属性
- android 4.4 添加物理按键
- android adb介绍
- Android 屏幕适配相关解决方案
- android studio 非法字符: '\ufeff' 解决方案
- android studio 中配置androidAnnotation 的新版正确配置