转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/24521483

下面App基本都有下拉刷新的功能,以前基本都使用XListView或者自己写一个下拉刷新,近期Google提供了一个官方的下拉刷新控件SwipeRefreshLayout,我感觉还不错啊,见惯了传统的下拉刷新,这个反而给人耳目一新的感觉(貌似知乎的APP已经使用这种下拉刷新了)。

Google也在官方网站给出了V4的兼容包:

顺便看一眼API呗:

和XlistView差不多,还是很方便使用的,大概就这4个常用的方法,下面贴个简单的例子。

1、布局文件:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="match_parent" ><android.support.v4.widget.SwipeRefreshLayoutandroid:id="@+id/id_swipe_ly"android:layout_width="match_parent"android:layout_height="match_parent" ><ListViewandroid:id="@+id/id_listview"android:layout_width="match_parent"android:layout_height="match_parent" ></ListView></android.support.v4.widget.SwipeRefreshLayout></RelativeLayout>

2、MainActivty:

/** Created by Storm Zhang, Mar 31, 2014.*/package com.zhy.swiperefreshlayoutdemo;import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;import android.annotation.SuppressLint;
import android.app.Activity;
import android.os.Bundle;
import android.os.Handler;
import android.support.v4.widget.SwipeRefreshLayout;
import android.util.Log;
import android.widget.ArrayAdapter;
import android.widget.ListView;public class MainActivity extends Activity implements SwipeRefreshLayout.OnRefreshListener
{private static final int REFRESH_COMPLETE = 0X110;private SwipeRefreshLayout mSwipeLayout;private ListView mListView;private ArrayAdapter<String> mAdapter;private List<String> mDatas = new ArrayList<String>(Arrays.asList("Java", "Javascript", "C++", "Ruby", "Json","HTML"));private Handler mHandler = new Handler(){public void handleMessage(android.os.Message msg){switch (msg.what){case REFRESH_COMPLETE:mDatas.addAll(Arrays.asList("Lucene", "Canvas", "Bitmap"));mAdapter.notifyDataSetChanged();mSwipeLayout.setRefreshing(false);break;}};};@SuppressLint("InlinedApi")protected void onCreate(Bundle savedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);mListView = (ListView) findViewById(R.id.id_listview);mSwipeLayout = (SwipeRefreshLayout) findViewById(R.id.id_swipe_ly);mSwipeLayout.setOnRefreshListener(this);mSwipeLayout.setColorScheme(android.R.color.holo_blue_bright, android.R.color.holo_green_light,android.R.color.holo_orange_light, android.R.color.holo_red_light);mAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, mDatas);mListView.setAdapter(mAdapter);}public void onRefresh(){// Log.e("xxx", Thread.currentThread().getName());// UI ThreadmHandler.sendEmptyMessageDelayed(REFRESH_COMPLETE, 2000);}
}

好了,结束,我感觉效果挺好看的,不妨试试。

效果图:

ok ~

源码点击此处下载

转载于:https://www.cnblogs.com/oversea201405/p/3752011.html

Android SwipeRefreshLayout 官方下拉刷新控件介绍相关推荐

  1. android google 下拉刷新 csdn,android SwipeRefreshLayout google官方下拉刷新控件

    下拉刷新功能之前一直使用的是XlistView很方便我前面的博客有介绍 SwipeRefreshLayout是google官方推出的下拉刷新控件使用方法也比较简单 今天就来使用下SwipeRefres ...

  2. Android自定义控件实战——下拉刷新控件终结者:PullToRefreshLayout

    说到下拉刷新控件,网上版本有很多,很多软件也都有下拉刷新功能.有一个叫XListView的,我看别人用过,没看过是咋实现的,看这名字估计是继承自ListView修改的,不过效果看起来挺丑的,也没什么扩 ...

  3. 浅谈Android列表ListView下拉刷新控件的实现(一)

    ListView下拉刷新的功能到处可见,很多app客户端都存在,比如QQ空间好友动态下拉刷新,网易新闻内容下拉刷新等.相信很多人已经把这个功能运用的很溜,妥妥的吧,接下就来实现一下功能,有个不爽的一点 ...

  4. android webview 下拉刷新页面,Android 下拉刷新控件SwipeRefreshLayout结合WebView使用

    SwipeRefreshLayout 是谷歌官方下拉刷新控件,4.0如下的版本须要用到 android-support-v4.jar包才能用到html android-support-v4.jar 包 ...

  5. Android SwipeRefreshLayout下拉刷新控件源码简单分析

    咱们在做Android APP开发的时候经常碰到有下拉刷新和上拉加载跟多的需求,这篇文章咱们先说说下来刷新,咱们就以google的原生的下拉刷新控件SwipeRefreshLayout来看看大概的实现 ...

  6. android 下拉刷新 组件,android系统自带下拉刷新控件的实现

    android系统自带的下拉刷新控件SwipeRefreshLayout位于android.support.v4.widget包下,实现步骤如下: 1.在布局文件中添加该控件,该控件一般作为父控件,而 ...

  7. android多个下拉控件,Android实现支持所有View的通用的下拉刷新控件

    下拉刷新对于一个app来说是必不可少的一个功能,在早期大多数使用的是chrisbanes的PullToRefresh,或是修改自该框架的其他库.而到现在已经有了更多的选择,github上还是有很多体验 ...

  8. Android 怎么实现支持所有View的通用的下拉刷新控件

    转载请标明出处: http://blog.csdn.net/u010386612/article/details/51372696 本文出自:[AItsuki的博客] 下拉刷新对于一个app来说是必不 ...

  9. android禁止下拉刷新,Android开发之无痕过渡下拉刷新控件的实现思路详解

    相信大家已经对下拉刷新熟悉得不能再熟悉了,市面上的下拉刷新琳琅满目,然而有很多在我看来略有缺陷,接下来我将说明一下存在的缺陷问题,然后提供一种思路来解决这一缺陷,废话不多说!往下看嘞! 1.市面一些下 ...

最新文章

  1. 微软计划2008年初发布Windows Server2008
  2. pod资源限制,探针,指定资源
  3. deinstall 卸载grid_oracle 11g RAC手动卸载grid,no deinstall   .
  4. 一次缓存性能问题排查
  5. java核心技术-jvm基础知识
  6. 计算机英语的语言特点及教学,计算机英语的语言特点及教学.doc
  7. CAN笔记(9) 位填充
  8. 深入学习js之——词法作用域和动态作用域
  9. 在线文本去重统计工具
  10. Java中解决(extjs或jquery)session过期退出登录问题
  11. 非连续内存区缺页异常处理
  12. 数据结构C语言版第二版答案 严蔚敏 李冬梅 吴伟民 编著
  13. Android源码下载编译(高通)
  14. C语言中p=(1 r) n,如何计算p=c/(1+r)+c/(1+r)*(1+r)+........+c/(1+r)的n次方+m/(1+r)的n次方
  15. Ubuntu真心不太适合搞开发啊
  16. 【重识云原生】第一章——不谋全局不足以谋一域
  17. Qt使用两组RadioButton,两组之间相互独立
  18. 在线翻译html网页,HTML网页到维基页面翻译器
  19. 大学教务人员管理系统(C++实现)
  20. 陆奇新东家落定,YC入华将开创另类创投

热门文章

  1. java得出两个日期之间所有日期
  2. sp_executesql 使用复杂的 Unicode 表达式
  3. android progressbar 不显示_Android多线程技术选型最全指南(1)
  4. CAN总线简明易懂教程(一)
  5. oracle查看联机日志,oracle联机日志和归档日志
  6. 详解wait和waitpid函数
  7. 系统无法正确检测到盘符
  8. CMB标量功率谱第一个谱指数跑动项n(1)跑动带来的影响
  9. 8Manage:如何变革性的加强企业采购管理?
  10. RocketMQ CommitLog And Index