V4的兼容包

API

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

code

布局

  1. <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
  2. xmlns:tools="http://schemas.android.com/tools"
  3. android:layout_width="match_parent"
  4. android:layout_height="match_parent"
  5. tools:context=".MainActivity" >
  6.  
  7. <android.support.v4.widget.SwipeRefreshLayout
  8. android:id="@+id/swipe"
  9. android:layout_width="match_parent"
  10. android:layout_height="match_parent" >
  11.  
  12. <ListView
  13. android:id="@+id/listview"
  14. android:layout_width="fill_parent"
  15. android:layout_height="wrap_content" />
  16. </android.support.v4.widget.SwipeRefreshLayout>
  17.  
  18. </RelativeLayout>

MainActivty

  1. @Override
  2. protected void onCreate(Bundle savedInstanceState) {
  3. super.onCreate(savedInstanceState);
  4. setContentView(R.layout.activity_main);
  5. listView = (ListView) findViewById(R.id.listview);
  6. mSwipeLayout = (SwipeRefreshLayout) findViewById(R.id.swipe);
  7.  
  8. list = new ArrayList<MyTextClass>();
  9.  
  10. Map<String, String> maps = new HashMap<String, String>();
  11. maps.put("1", "2");
  12.  
  13. myHandler = new MyHandler();
  14.  
  15. client = new MyHttpClient(myHandler);
  16.  
  17. myThread = new MyThread(client,"http://192.168.1.4/json/index.php",maps,GETJSON);
  18.  
  19. myHandler.setThread(myThread);
  20.  
  21. myHandler.setHandlerExtraHandleMessage(new MyHandler.HandlerExtraHandleMessage()
  22. {
  23.  
  24. @Override
  25. public void handleMessage(Message msg) {
  26. switch (msg.what) {
  27. case GETJSON:
  28. String strJson1 = (String) msg.obj;
  29. Json json1 = new Json(strJson1);
  30. try {
  31. list = json1.getMyTextClass();
  32. } catch (JSONException e) {
  33. e.printStackTrace();
  34. }
  35. myBaseAdapter = new MyBaseAdapter(MainActivity.this, list);
  36. listView.setAdapter(myBaseAdapter);
  37. break;
  38. case REFRESH:
  39. String strJson2 = (String) msg.obj;
  40. Json json2 = new Json(strJson2);
  41. //list.clear();
  42. try {
  43. list = json2.getMyTextClass();
  44. } catch (JSONException e) {
  45. e.printStackTrace();
  46. }
  47.  
  48. if(myBaseAdapter != null)
  49. {
  50. myBaseAdapter.setList(list);
  51. myBaseAdapter.notifyDataSetChanged();
  52. }
  53. else
  54. {
  55. MyBaseAdapter myBaseAdapter2 = new MyBaseAdapter(MainActivity.this, list);
  56. listView.setAdapter(myBaseAdapter2);
  57. }
  58. mSwipeLayout.setRefreshing(false);
  59. break;
  60.  
  61. default:
  62. System.out.println("Other Message");
  63. break;
  64. }
  65. super.handleMessage(msg);
  66. }
  67.  
  68. });
  69.  
  70. Map<String, String> maps2 = new HashMap<String, String>();
  71. maps.put("1", "2");
  72. MyRefreshListener myRefreshListener = new MyRefreshListener(myHandler, maps2, REFRESH);
  73. mSwipeLayout.setOnRefreshListener(myRefreshListener);
  74. mSwipeLayout.setColorScheme(android.R.color.holo_green_dark, android.R.color.holo_green_light,
  75. android.R.color.holo_orange_light, android.R.color.holo_red_light);
  76.  
  77. }

我是天王盖地虎的分割线

源代码:http://pan.baidu.com/s/1dD1Qx01

listview异步.zip

 

Android -- 官方下拉刷新SwipeRefreshLayout的更多相关文章

  1. Android 官方下拉刷新 SwipeRefreshLayout

    0.build.gradle compile 'com.android.support:support-v4:23+' 1.布局文件 <android.support.v4.widget.Swi ...

  2. android官方下拉刷新控件SwipeRefreshLayout的使用

    可能开发安卓的人大多数都用过很多下拉刷新的开源组件,但是今天用了官方v4支持包的SwipeRefreshLayout觉得效果也蛮不错的,特拿出来分享. 简介:SwipeRefreshLayout组件只 ...

  3. 【转】Android官方下拉刷新控件 SwipeRefreshLayout

    今天在Google+上看到了SwipeRefreshLayout这个名词,遂搜索了下,发现竟然是刚刚google更新sdk新增加的一个widget,于是赶紧抢先体验学习下. SwipeRefreshL ...

  4. android——官方下拉刷新组件SwipeRefreshLayout(转)

    一.问题描述 在android开发中,使用最多的数据刷新方式就是下拉刷新了,而完成此功能我们使用最多的就是第三方的开源库PullToRefresh.现如今,google也忍不住推出了自己的下拉组件Sw ...

  5. Android listview下拉刷新 SwipeRefreshLayout

    今天在Google+上看到了SwipeRefreshLayout这个名词,遂搜索了下,发现竟然是刚刚google更新sdk新增加的一个widget,于是赶紧抢先体验学习下. SwipeRefreshL ...

  6. Android原生下拉刷新SwipeRefreshLayout实践

    本篇文章翻译自Ravi Tamada的Android Swipe Down to Refresh ListView Tutorial 首先来看一下效果图 你应该发现很多的android app比如Tw ...

  7. Android Material Design控件使用(四)——下拉刷新 SwipeRefreshLayout

    使用下拉刷新SwipeRefreshLayout 说明 SwipeRefreshLayout是Android官方的一个下拉刷新控件,一般我们使用此布局和一个RecyclerView嵌套使用 使用 xm ...

  8. Android智能下拉刷新加载框架—看这些就够了

    一些值得学习的几个下拉刷新上拉加载开源库 Android智能下拉刷新框架-SmartRefreshLayout 支持所有的 View(AbsListView.RecyclerView.WebView. ...

  9. Xamarin. Android实现下拉刷新功能

    PS:发现文章被其他网站或者博客抓取后发表为原创了,给图片加了个水印 下拉刷新功能在安卓和iOS中非常常见,一般实现这样的功能都是直接使用第三方的库,网上能找到很多这样的开源库.然而在Xamarin. ...

随机推荐

  1. JQUERY1.9学习笔记 之可见性过滤器(一) 隐藏选择器

    描述:选择所有隐藏的元素. jQuery( ":hidden" ) 例:显示出所有隐藏的div元素,并对隐藏的input元素计数. <!doctype html>< ...

  2. ubuntu 安装 open in teminal

    sudo apt-get install nautilus-open-terminalnautilus -q

  3. phpcms栏目调用

    {loop subcat(0,0,0,$siteid) $r} {php $num++} <h3><a href="{$r[url]}">{$r[catna ...

  4. 【转】HTML5 LocalStorage 本地存储

    原文见:http://www.cnblogs.com/xiaowei0705/archive/2011/04/19/2021372.html 说到本地存储,这玩意真是历尽千辛万苦才走到HTML5这一步 ...

  5. 【转】app后端如何选择合适的数据库产品

    转自:http://blog.csdn.net/newjueqi/article/details/44003503 app后端的开发中,经常要面临的一个问题是:数据放在哪里? mysql ?redis ...

  6. android的padding和margin的区别

    android:padding和android:layout_margin的区别:padding是站在父view的角度描述问题,它规定它里面的内容必须与这个父view边界的距离. margin则是站在 ...

  7. C#程序设计基础——类、对象、方法

    类与对象 类 类是一种构造,通过使用该构造,用户可以将其他类型的变量.方法和事件组合在一起,从而创建自定义类型.类就像一个蓝图,它定义类型的数据和行为. 对象 定义类之后,便可通过将类加载到内存中来使 ...

  8. Android中SharedPreferences使用方法介绍

    一.Android SharedPreferences的简介 SharedPreferences是一种轻型的Android数据存储方式,它的本质是基于XML文件存储key-value键值对数据,通常用 ...

  9. 【HDOJ】2425 Hiking Trip

    优先级队列+BFS. #include <iostream> #include <cstdio> #include <cstring> #include <q ...

  10. Keepalived实现Redis Failover

    一.环境说明 操作系统版本:RHEL 5.4_64 redis版本:2.8.17 keepalived版本:1.1.15 master:10.142.130.81 slave:  10.142.130 ...