Android之library_PullToRefresh实现下拉刷新
来源:互联网 发布:北斗测亩仪软件下载 编辑:程序博客网 时间:2024/05/17 13:43
一个简单的下拉刷新案例,很实用。
1、首先要在项目中加入library_PullToRefresh的库或者jar包。(文章后面提供资源及demo的链接)
2、在layout中使用PullToRefreshListView控件
<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" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".MainActivity" > <com.handmark.pulltorefresh.library.PullToRefreshListView android:id="@+id/pull_to_refresh_listview" android:layout_height="fill_parent" android:layout_width="fill_parent" /></RelativeLayout>
3、Activity中使用
package com.rainsong.pulltorefreshdemo;import java.util.Arrays;import java.util.LinkedList;import android.app.Activity;import android.os.AsyncTask;import android.os.Bundle;import android.text.format.DateUtils;import android.view.Menu;import android.widget.ArrayAdapter;import android.widget.ListView;import com.handmark.pulltorefresh.library.PullToRefreshBase;import com.handmark.pulltorefresh.library.PullToRefreshBase.OnRefreshListener;import com.handmark.pulltorefresh.library.PullToRefreshListView;public class MainActivity extends Activity { private PullToRefreshListView mPullToRefreshListView; private LinkedList<String> mListItems; private ArrayAdapter<String> mAdapter; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // 设置一个监听器调用时刷新列表 mPullToRefreshListView = (PullToRefreshListView) findViewById(R.id.pull_to_refresh_listview); mPullToRefreshListView.setOnRefreshListener(new OnRefreshListener<ListView>() { @Override public void onRefresh(PullToRefreshBase<ListView> refreshView) { String label = DateUtils.formatDateTime(getApplicationContext(), System.currentTimeMillis(), DateUtils.FORMAT_SHOW_TIME | DateUtils.FORMAT_SHOW_DATE | DateUtils.FORMAT_ABBREV_ALL); // 添加时间 refreshView.getLoadingLayoutProxy().setLastUpdatedLabel(label); // 在此处刷新列表 new GetDataTask().execute(); } }); ListView actualListView = mPullToRefreshListView.getRefreshableView(); mListItems = new LinkedList<String>(); mListItems.addAll(Arrays.asList(mStrings)); mAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, mListItems); actualListView.setAdapter(mAdapter); } private class GetDataTask extends AsyncTask<Void, Void, String[]> { @Override protected String[] doInBackground(Void... params) { // 模拟一个耗时操作 try { Thread.sleep(4000); } catch (InterruptedException e) { } return mStrings; } @Override protected void onPostExecute(String[] result) { mListItems.addFirst("新增手机"); mAdapter.notifyDataSetChanged(); // 刷新列表 mPullToRefreshListView.onRefreshComplete(); super.onPostExecute(result); } } private String[] mStrings = { "华为", "小米", "魅族", "锤子", "oppo", "vivo", "乐视", "三星", "诺基亚", "酷派", "努比亚", "中兴", "联想", "360", "美图", "一加", "摩托罗拉", "苹果"};}
4、效果展示
5、资源下载
点击打开链接,下载依赖库及demo
阅读全文
0 0
- Android之library_PullToRefresh实现下拉刷新
- android之listivew实现下拉刷新
- android之Listview的下拉刷新实现
- android之listivew实现下拉刷新
- Android之ListView实现下拉刷新
- Android下拉刷新实现
- Android中实现下拉刷新
- Android中实现下拉刷新 .
- Android中实现下拉刷新
- Android中实现下拉刷新
- Android中实现下拉刷新
- Android中实现下拉刷新
- Android中实现下拉刷新
- Android中实现下拉刷新 .
- android 下拉刷新 快速实现
- Android 下拉刷新框架实现
- Android 下拉刷新框架实现
- Android 下拉刷新框架实现
- 莫比乌斯反演
- 拦截器和文件上传和Struts2AJAX学习笔记
- MUI添加自定义icon图标 阿里巴巴矢量图标
- MindManager教你做一份完美的笔记
- Qt打开外部程序
- Android之library_PullToRefresh实现下拉刷新
- Okabe and Future Gadget Laboratory CodeForces
- Android6.0 获取MAC地址
- 写给大数据开发初学者的话
- 没有免费的午餐定理 NFL:(No Free Lunch Theorem)
- vue.js的devtools安装
- 集成Structs1.x
- Hdu 2568 How far away? LCA
- 2017 多校训练第二场 HDU 6050 Funny Function