Android -- 官方下拉刷新SwipeRefreshLayout
V4的兼容包

API

大概就这4个常用的方法。
code
布局

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity" > <android.support.v4.widget.SwipeRefreshLayout
android:id="@+id/swipe"
android:layout_width="match_parent"
android:layout_height="match_parent" > <ListView
android:id="@+id/listview"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
</android.support.v4.widget.SwipeRefreshLayout> </RelativeLayout>

MainActivty

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
listView = (ListView) findViewById(R.id.listview);
mSwipeLayout = (SwipeRefreshLayout) findViewById(R.id.swipe); list = new ArrayList<MyTextClass>(); Map<String, String> maps = new HashMap<String, String>();
maps.put("1", "2"); myHandler = new MyHandler(); client = new MyHttpClient(myHandler); myThread = new MyThread(client,"http://192.168.1.4/json/index.php",maps,GETJSON); myHandler.setThread(myThread); myHandler.setHandlerExtraHandleMessage(new MyHandler.HandlerExtraHandleMessage()
{ @Override
public void handleMessage(Message msg) {
switch (msg.what) {
case GETJSON:
String strJson1 = (String) msg.obj;
Json json1 = new Json(strJson1);
try {
list = json1.getMyTextClass();
} catch (JSONException e) {
e.printStackTrace();
}
myBaseAdapter = new MyBaseAdapter(MainActivity.this, list);
listView.setAdapter(myBaseAdapter);
break;
case REFRESH:
String strJson2 = (String) msg.obj;
Json json2 = new Json(strJson2);
//list.clear();
try {
list = json2.getMyTextClass();
} catch (JSONException e) {
e.printStackTrace();
} if(myBaseAdapter != null)
{
myBaseAdapter.setList(list);
myBaseAdapter.notifyDataSetChanged();
}
else
{
MyBaseAdapter myBaseAdapter2 = new MyBaseAdapter(MainActivity.this, list);
listView.setAdapter(myBaseAdapter2);
}
mSwipeLayout.setRefreshing(false);
break; default:
System.out.println("Other Message");
break;
}
super.handleMessage(msg);
} }); Map<String, String> maps2 = new HashMap<String, String>();
maps.put("1", "2");
MyRefreshListener myRefreshListener = new MyRefreshListener(myHandler, maps2, REFRESH);
mSwipeLayout.setOnRefreshListener(myRefreshListener);
mSwipeLayout.setColorScheme(android.R.color.holo_green_dark, android.R.color.holo_green_light,
android.R.color.holo_orange_light, android.R.color.holo_red_light); }

我是天王盖地虎的分割线

源代码:http://pan.baidu.com/s/1dD1Qx01
listview异步.zip
Android -- 官方下拉刷新SwipeRefreshLayout的更多相关文章
- Android 官方下拉刷新 SwipeRefreshLayout
0.build.gradle compile 'com.android.support:support-v4:23+' 1.布局文件 <android.support.v4.widget.Swi ...
- android官方下拉刷新控件SwipeRefreshLayout的使用
可能开发安卓的人大多数都用过很多下拉刷新的开源组件,但是今天用了官方v4支持包的SwipeRefreshLayout觉得效果也蛮不错的,特拿出来分享. 简介:SwipeRefreshLayout组件只 ...
- 【转】Android官方下拉刷新控件 SwipeRefreshLayout
今天在Google+上看到了SwipeRefreshLayout这个名词,遂搜索了下,发现竟然是刚刚google更新sdk新增加的一个widget,于是赶紧抢先体验学习下. SwipeRefreshL ...
- android——官方下拉刷新组件SwipeRefreshLayout(转)
一.问题描述 在android开发中,使用最多的数据刷新方式就是下拉刷新了,而完成此功能我们使用最多的就是第三方的开源库PullToRefresh.现如今,google也忍不住推出了自己的下拉组件Sw ...
- Android listview下拉刷新 SwipeRefreshLayout
今天在Google+上看到了SwipeRefreshLayout这个名词,遂搜索了下,发现竟然是刚刚google更新sdk新增加的一个widget,于是赶紧抢先体验学习下. SwipeRefreshL ...
- Android原生下拉刷新SwipeRefreshLayout实践
本篇文章翻译自Ravi Tamada的Android Swipe Down to Refresh ListView Tutorial 首先来看一下效果图 你应该发现很多的android app比如Tw ...
- Android Material Design控件使用(四)——下拉刷新 SwipeRefreshLayout
使用下拉刷新SwipeRefreshLayout 说明 SwipeRefreshLayout是Android官方的一个下拉刷新控件,一般我们使用此布局和一个RecyclerView嵌套使用 使用 xm ...
- Android智能下拉刷新加载框架—看这些就够了
一些值得学习的几个下拉刷新上拉加载开源库 Android智能下拉刷新框架-SmartRefreshLayout 支持所有的 View(AbsListView.RecyclerView.WebView. ...
- Xamarin. Android实现下拉刷新功能
PS:发现文章被其他网站或者博客抓取后发表为原创了,给图片加了个水印 下拉刷新功能在安卓和iOS中非常常见,一般实现这样的功能都是直接使用第三方的库,网上能找到很多这样的开源库.然而在Xamarin. ...
随机推荐
- php之分页类代码
/* 思路 1.把地址栏的URL获取 2.分析URL中的query部分--就是?后面传参数的部分 3.query部分分析成数组 4.把数组中的page单元,+1,-1,形成2个新的数组 5.再把新数组 ...
- 企业证书发布APP
http://blog.csdn.net/xueer8835/article/details/18033221 1.首先要企业版的开发者帐号2.证书配置参考 IOS开发--企业版IDP的申请及“In ...
- 老oj曼哈顿最小生成树
Description 平面坐标系xOy内,给定n个顶点V = (x , y).对于顶点u.v,u与v之间的距离d定义为|xu – xv| + |yu – yv| 你的任务就是求出这n个顶点的最小生成 ...
- 一个获取Android手机root权限的程序
PermRoot.bat可以获取root权限. IsRoot.bat可以测试是否拥有root权限. UnRoot.bat可以清除root权限. 下载地址: http://pan.baidu.com/s ...
- ExtJS 4 类系统
ExtJS 4的类系统(class system)进行了一次重大重构,ExtJS4的新架构就是基于这套新的类系统构建的,因此有必要先了解以下这个class system这篇文章分为四章 I: &quo ...
- [BZOJ 2004] [Hnoi2010] Bus 公交线路 【状压DP + 矩阵乘法】
题目链接: BZOJ - 2004 题目分析 看到题目完全不会..于是立即看神犇们的题解. 由于 p<=10 ,所以想到是使用状压.将每个连续的 p 个位置压缩成一个 p 位 2 进制数,其中共 ...
- SaltStack Syndic配置
参考URL: http://www.ttlsa.com/saltstack/saltstack-syndic-example/ 虽然中心master看不到 minion的key 但是还是可以直接指导m ...
- 0x80072f8a未指定的错误
问题: 安装DotNetCore.1.0.1-VS2015Tools.Preview2.0.2.exe提示:0x80072f8a未指定的错误 解决方法: 修改IE选项,取消选项 “检查服务器证书是否已 ...
- 一个Java对象到底占多大内存
最近在读<深入理解Java虚拟机>,对Java对象的内存布局有了进一步的认识,于是脑子里自然而然就有一个很普通的问题,就是一个Java对象到底占用多大内存? 在网上搜到了一篇博客讲的非常好 ...
- Java实现二叉树的构建与遍历
转载:http://ocaicai.iteye.com/blog/1047397 目录: 1.把一个数组的值赋值给一颗二叉树 2.具体代码 1.树的构建方法 2.具体代码 package tree; ...