android下拉刷新控件 android-pulltorefresh
运行效果:
介绍:ListView、ViewPager、WevView、ExpandableListView、GridView、(Horizontal)ScrollView、Fragment上下左右拉动刷新。并且他实现的下拉刷新ListView在item不足一屏情况下也不会显示刷新提示,体验更好。
项目地址:https://github.com/chrisbanes/Android-PullToRefresh 其中sample为例子,可以加入Exlipse运行查看效果
或者例子Apk地址:https://github.com/Trinea/TrineaDownload/blob/master/pull-to-refreshview-demo.apk?raw=true
使用步骤:
1.引用包导入:file→Import...→Existing Android Code Into Workspace→next→只需要导入文件library即可→finish
补充:android studio参考文档:http://drakeet.me/android-studio
举例:file→new→Import Module...→只需要导入文件library即可→在需要应用该包的项目中(注意点:不是导入的包中,是你APP的项目)build.gradle的dependencies{}中添加 compile project(':library') 语句,其中library是你导入文件的名字
2.开始运用:布局文件xml中添加标签
列子:com.handmark.pulltorefresh.library.PullToRefreshListView
包名:com.handmark.pulltorefresh.library固定
在Activity中运用
参数:
private PullToRefreshListView lv;
private String[] mListTitle = {"姓名", "性别", "年龄", "居住地", "邮箱"};
private String[] mListStr = {"雨松MOMO", "男", "25", "北京","xuanyusong@gmail.com"};
ArrayList<Map<String, Object>> mData = new ArrayList<Map<String, Object>>();
然后补充ListView数据:
int lengh = mListTitle.length;
for (int i = 0; i < lengh; i++) {
Map<String, Object> item = new HashMap<String, Object>();
item.put("title", mListTitle[i]);
item.put("text", mListStr[i]);
mData.add(item);
}
ListView适配器添加跟刷新设置
SimpleAdapter adapter = new SimpleAdapter(this, mData, android.R.layout.simple_list_item_2,
new String[]{"title", "text"}, new int[]{android.R.id.text1, android.R.id.text2});
lv=(PullToRefreshListView)findViewById(R.id.list);
lv.setAdapter(adapter);
lv.setOnRefreshListener(new PullToRefreshBase.OnRefreshListener<ListView>() {
@Override
public void onRefresh(PullToRefreshBase<ListView> refreshView) {
// TODO Auto-generated method stub
new AsyncTask<Void, Void, Void>() {
@Override
protected Void doInBackground(Void... params) {
// 处理刷新任务
try {
Thread.sleep(3000);
} catch (InterruptedException e) {
e.printStackTrace();
}
return null;
}
@Override
protected void onPostExecute(Void reslst)
{
// 更行内容,通知 PullToRefresh 刷新结束
lv.onRefreshComplete();
}
}.execute();
}
}); //设置PullRefreshListView上提加载时的加载提示
lv.getLoadingLayoutProxy(true, false).setPullLabel("下拉刷新...");
lv.getLoadingLayoutProxy(true, false).setRefreshingLabel("正在刷新...");
lv.getLoadingLayoutProxy(true, false).setReleaseLabel("松开刷新...");
android下拉刷新控件 android-pulltorefresh的更多相关文章
- Android下拉刷新控件--PullToRefresh的简单使用
Android中很多时候都会用到上下拉刷新,这是一个很常用的功能,Android的v4包中也为我们提供了一种原生的下拉刷新控件--SwipeRefreshLayout,可以用它实现一个简洁的刷新效果, ...
- [Android]下拉刷新控件RefreshableView的实现
以下内容为原创,欢迎转载,转载请注明 来自天天博客:http://www.cnblogs.com/tiantianbyconan/p/4172483.html 需求:自定义一个ViewGroup,实现 ...
- Android下拉刷新控件android-Ultra-Pull-To-Refresh 使用
一.gitHub地址及介绍 https://github.com/liaohuqiu/android-Ultra-Pull-To-Refresh android-Ultra-Pull-To-Refre ...
- Android 下拉刷新控件Android-PullToRefresh
需要用到一个开源库 Android-PullToRefresh https://github.com/chrisbanes/Android-PullToRefresh ---------------- ...
- Android PullToRefresh下拉刷新控件的简单使用
PullToRefresh这个开源库早就听说了,不过一直没用过.作为一个经典的的开源库,我觉得还是有必要认识一下. 打开github上的网址:https://github.com/chrisbanes ...
- Android仿苹果版QQ下拉刷新实现(一) ——打造简单平滑的通用下拉刷新控件
前言: 忙完了结婚乐APP的开发,终于可以花一定的时间放在博客上了.好了,废话不多说,今天我们要带来的效果是苹果版本的QQ下拉刷新.首先看一下目标效果以及demo效果: 因为此效果实现的步骤 ...
- android官方下拉刷新控件SwipeRefreshLayout的使用
可能开发安卓的人大多数都用过很多下拉刷新的开源组件,但是今天用了官方v4支持包的SwipeRefreshLayout觉得效果也蛮不错的,特拿出来分享. 简介:SwipeRefreshLayout组件只 ...
- android SwipeRefreshLayout google官方下拉刷新控件
下拉刷新功能之前一直使用的是XlistView很方便我前面的博客有介绍 SwipeRefreshLayout是google官方推出的下拉刷新控件使用方法也比较简单 今天就来使用下SwipeRefres ...
- Android SwipeRefreshLayout 官方下拉刷新控件介绍
转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/24521483 下面App基本都有下拉刷新的功能,以前基本都使用XListView ...
随机推荐
- c++对象内存布局的理解
我对c++对象内存布局的理解 引言 结合网上的一些资料,通过自己的一番摸索,得出了一点个人见解.现在写下来,希望与各位同学共同探讨,共同进步. 以下所有代码均是在VS2012下测试. 一个普通的基 ...
- android Fragment 用法小结
Fragment 是android 3.0引入的新API,是作为Activity的子模块,必须嵌入Activity才能使用. Activity 与 Fragment的关系: 一.依附性: 1. Fra ...
- JavaScript修改Canvas图片
用JavaScript修改Canvas图片的分辨率(DPI) 应用场景: 仓库每次发货需要打印标签, Canvas根据从数据库读取的产品信息可以生成标签JPG, 但是这个JPG图片的默认分辨率(D ...
- ASP.NET WebForm 的路由
ASP.NET WebForm 的路由 偷会闲, 看看博客园, 有筒子写了篇: ASP.NET的路由 我翻了翻两前的一份邮件, 是我当时在项目之余的时间研究的,那时还没用MVC,所有项目都是 WebF ...
- 最近对Memcache的一些学习
首先,Memcache是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提供动态.数据库驱动网站的速度,再特别强调下:M ...
- 用c#实现与飞环语音卡的交互
现在很多企业都采用freeswitch搭建的软交换来实现通话,主要优势成本低吞吐量大,但是语音卡的通话质量还是瑞胜一筹. 去年有机会在朋友公司里帮忙开发与软交换交互的上层服务及接口,在开发过程中稍微研 ...
- - 高级篇:二,IL设置静态属性,字段和类型转换
- 高级篇:二,IL设置静态属性,字段和类型转换 静态属性赋值 先来看 Reflector反射出的IL源码(感谢Moen的提示),这次用 Release模式编译,去掉那些无用的辅助指令 public ...
- Go语言Web框架gwk介绍2
Go语言Web框架gwk介绍 (二) HttpResult 凡是实现了HttpResult接口的对象,都可以作为gwk返回Web客户端的内容.HttpResult接口定义非常简单,只有一个方法: ty ...
- T-SQL查询语句(二):嵌套查询
一个select...From...Where查询语句块可以嵌套在另一个select...From...Where查询块的Where子句中,称为嵌套查询.外层查询称为父查询,主查询.内层查询称为子查询 ...
- 纯Python综合图像处理小工具(4)自定义像素级处理(剪纸滤镜)
上一节介绍了python PIL库自带的10种滤镜处理,现成的库函数虽然用起来方便,但是对于图像处理的各种实际需求,还需要开发者开发自定义的滤镜算法.本文将给大家介绍如何使用PIL对图像进行自定义 ...