Android--Demo_PullToRefresh(基础篇)
2016-06-14 14:00
537 查看
转载请声明地址:http://blog.csdn.net/skyunicorn/article/details/51671234
PullTorefresh下载地址:https://github.com/chrisbanes/Android-PullToRefresh
Demo_PullToRefresh(进阶篇)
Demo_PullToRefresh(特效篇)
File-->New-->Import Module
找到文件然后Finish
然后目录是这样的
在app下的build中添加
然后就可以使用了
在布局中添加
这是默认的最基本的样式(自定义样式后面讲)
代码中添加代码获取到PullTorefresh中的ListView
然后具体使用和平时我们用的listView是一样的(适配器大家自己写了)。
最后我们来看看成果:
这就是基本达到我们需要的要求了。
Demo地址:http://download.csdn.net/detail/skyunicorn/9549164
PullTorefresh下载地址:https://github.com/chrisbanes/Android-PullToRefresh
Demo_PullToRefresh(进阶篇)
Demo_PullToRefresh(特效篇)
一、导包
导入项目“PullToRefresh”File-->New-->Import Module
找到文件然后Finish
然后目录是这样的
在app下的build中添加
compile project(':PullToRefresh') //pulltorefresh
然后就可以使用了
二、使用(基础篇)
以ListView为例(只写主要代码,其他的请下载Demo自己看吧):在布局中添加
<com.handmark.pulltorefresh.library.PullToRefreshListView android:id="@+id/pull_to_refresh" android:layout_width="match_parent" android:layout_height="match_parent" />
这是默认的最基本的样式(自定义样式后面讲)
代码中添加代码获取到PullTorefresh中的ListView
mPullToRefreshListView = (PullToRefreshListView) findViewById(R.id.pull_to_refresh); lv = mPullToRefreshListView.getRefreshableView();//获取listview
然后具体使用和平时我们用的listView是一样的(适配器大家自己写了)。
private void initRefresh() { /* * Mode.BOTH:同时支持上拉下拉 * Mode.PULL_FROM_START:只支持下拉Pulling Down * Mode.PULL_FROM_END:只支持上拉Pulling Up * Mode.DISABLED:禁用下拉刷新和上拉加载 * Mode.MANUAL_REFRESH_ONLY:只允许手动触发 */ /* * 如果Mode设置成Mode.BOTH,需要设置刷新Listener为OnRefreshListener2,并实现onPullDownToRefresh()、onPullUpToRefresh()两个方法。 * 如果Mode设置成Mode.PULL_FROM_START或Mode.PULL_FROM_END,需要设置刷新Listener为OnRefreshListener,同时实现onRefresh()方法。 * 当然也可以设置为OnRefreshListener2,但是Mode.PULL_FROM_START的时候只调用onPullDownToRefresh()方法, * Mode.PULL_FROM_END的时候只调用onPullUpToRefresh()方法. * 我一般用OnRefreshListener2,因为分工比较清楚 */ mPullToRefreshListView.setMode(PullToRefreshBase.Mode.BOTH); /* * getLoadingLayoutProxy(final boolean includeStart, final boolean includeEnd) * 用于指定显示的标签,第一个是改变头部,第二个是改变底部 */ ILoadingLayout startLoading = mPullToRefreshListView.getLoadingLayoutProxy( true, false); startLoading.setPullLabel("下拉刷新");// 刚下拉时显示的提示 startLoading.setRefreshingLabel("拼命刷新中...");// 刷新时显示的提示 startLoading.setReleaseLabel("释放即可刷新");// 下拉达到一定距离时显示的提示 ILoadingLayout endLoading = mPullToRefreshListView.getLoadingLayoutProxy(false, true); endLoading.setPullLabel("上拉加载更多");// 刚上拉时显示的提示 endLoading.setRefreshingLabel("拼命加载中...");// 加载时的提示 endLoading.setReleaseLabel("释放即可加载");// 上拉达到一定距离时显示的提示 mPullToRefreshListView.setOnRefreshListener(new PullToRefreshBase.OnRefreshListener2<ListView>() { // 下拉刷新 @Override public void onPullDownToRefresh(PullToRefreshBase<ListView> refreshView) { // 设置一秒后停止刷新(本地设置假数据,时间太短,会导致数据更新后,依旧显示刷新中) mPullToRefreshListView.postDelayed(new Runnable() { @Override public void run() { // 停止刷新 mPullToRefreshListView.onRefreshComplete(); // 加载数据 initDownLv(); // 刷新适配器中的数据 myAdapter.notifyDataSetChanged(); } }, 1000); } // 上拉加载更多 @Override public void onPullUpToRefresh(PullToRefreshBase<ListView> refreshView) { // 设置一秒后停止刷新(本地设置假数据,时间太短,会导致数据更新后,依旧显示刷新中) mPullToRefreshListView.postDelayed(new Runnable() { @Override public void run() { // 停止刷新 mPullToRefreshListView.onRefreshComplete(); // 加载数据 initUpLv(); // 刷新适配器中的数据 myAdapter.notifyDataSetChanged(); } }, 1000); } }); }
最后我们来看看成果:
这就是基本达到我们需要的要求了。
Demo地址:http://download.csdn.net/detail/skyunicorn/9549164
相关文章推荐
- 分享Android中pullToRefresh的使用心得
- PullToRefreshListView 应用讲解
- PullToRefresh开源库
- Android实际开发问题02------PullToRefresh
- 所闻所获3:下拉刷新控件1
- 所闻所获4:下拉刷新控件2
- 下拉刷新控件
- 安卓 解决PullToRefresh 无法导入到elcipse 的方法
- Android学习笔记——Android PullToRefresh (ListView,GridView 下拉刷新) 使用介绍
- PullToRefreshLibrary设置label提示信息注意点
- android开源框架之PullToRefresh概述
- (一) 两个接口(IPullToRefresh、ILoadingLayout)与一个基类(PullToRefreshBase)
- (二) 以PullToRefreshListView为例,讲解PullToRefresh中的View初始化操作
- Android listView 动态加载数据,下拉加载数据,上拉加载数据
- Android PullToRefresh (ListView GridView 下拉刷新) 使用详解
- Android PullToRefresh (ListView GridView 下拉刷新) 使用详解
- PullToRefresh扩展为上拉加载和下拉刷新
- pulltorefresh自动刷新
- Android下拉刷新
- 自定义PullToRefresh HeadLayout