现在很多android应用程序,比如新浪微博,在联网刷新内容时,都有一个滑动刷新的ListView,用户将内容下滑,就会有新的结果呈现。如下图所示:

上图中的功能是一个开源的项目android-pulltorefresh来实现的,我们可以利用这个项目来完成这个功能。

这个项目的源码托管在github上,地址为:https://github.com/johannilsson/android-pulltorefresh

下面来介绍如何使用:

滑动刷新其实就用到一个类PullToRefreshListView,它是ListView的子类,相应用到的layout文件为pull_to_refresh_header.xml。也就是说要用滑动刷新,需要将上面的类和xml及一些图片下载下来放到自己的工程中调用。

我们在用到这个类的activity的layout中加上如下代码:

<!--  The PullToRefreshListView replaces a standard ListView widget.--><com.markupartist.android.widget.PullToRefreshListView    android:id="@+id/android:list"    android:layout_height="fill_parent"    android:layout_width="fill_parent"    />

在activity中加入下面的代码:

// Set a listener to be invoked when the list should be refreshed.((PullToRefreshListView) getListView()).setOnRefreshListener(new OnRefreshListener() {    @Override    public void onRefresh() {        // Do work to refresh the list here.        new GetDataTask().execute();    }});private class GetDataTask extends AsyncTask<Void, Void, String[]> {    ...    @Override    protected void onPostExecute(String[] result) {        mListItems.addFirst("Added after refresh...");        // Call onRefreshComplete when the list has been refreshed.        ((PullToRefreshListView) getListView()).onRefreshComplete();        super.onPostExecute(result);    }}

以上代码分别是设置刷新监听器和后台任务执行。

自己原来写了一个例子,不小心删除了,就不重写贴给大家了。

另外,个人感觉这个滑动现在不是很灵敏,有些卡。

更多相关文章

  1. Android(安卓)Gradle编译学习日记之一(搭建 Gradle 环境以及编译
  2. Android(安卓)的Bitmap的修改方法
  3. Android(安卓)实现文件的下载
  4. ANDROID应用安全防御
  5. 视频教程-Android(安卓)IM 即时通讯实战项目-Android
  6. Android(安卓)安装配置及其项目开发
  7. android图片涂鸦,具有设置画笔,撤销,缩放移动等功能(一)
  8. Android(安卓)学习笔记 ——第二行代码 基于位置的服务
  9. Android(安卓)NDK JNI 的环境搭建以及简单的代码

随机推荐

  1. android 二维码 扫描与生成(内置)
  2. Android(安卓)开机Process xxx (pid xxxx
  3. 使用eclipse与android studio 在开发自定
  4. 微信内置浏览器UserAgent获取
  5. Android通过zxing来进行二维码识别与生成
  6. Android Fragment 生命周期onCreatView、
  7. Android帧缓冲区(Frame Buffer)硬件抽象层(H
  8. android gradle 3.0.0 中依赖指令impleme
  9. Android开发指南 —— Multimedia and Ca
  10. Android的Task和Activity(二)