Android下拉/上拉刷新ListView之Android-PullToRefresh
来源:互联网 发布:东京食尸鬼 知乎 编辑:程序博客网 时间:2024/05/16 11:57
Android下拉/上拉刷新ListView之Android-PullToRefresh
Android下拉和上拉刷新ListView列表内容的的一个优秀开源框架,在github上的项目链接地址:https://github.com/chrisbanes/Android-PullToRefresh
该PullToRefresh第三方控件功能强大,使用方便。
具体使用方法:
(1)首先到github上把该项目下载解压,导入到Eclipse的工程中。
(2)将Android-PullToRefresh作为一个lib引用到自己的项目中。
然后直接使用即可。
现在给出一个Demo。
import java.util.LinkedList; import com.handmark.pulltorefresh.library.PullToRefreshBase; import com.handmark.pulltorefresh.library.PullToRefreshBase.Mode; import com.handmark.pulltorefresh.library.PullToRefreshBase.OnLastItemVisibleListener; import com.handmark.pulltorefresh.library.PullToRefreshBase.OnRefreshListener2; import com.handmark.pulltorefresh.library.PullToRefreshListView; import android.support.v7.app.ActionBarActivity; import android.widget.ArrayAdapter; import android.widget.ListView; import android.widget.Toast; import android.os.Bundle; import android.os.Handler; public class MainActivity extends ActionBarActivity { private PullToRefreshListView mPullRefreshListView; private LinkedList<String> mListItems; private ArrayAdapter<String> mAdapter; // 数据 private int DATA = 0; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mPullRefreshListView = (PullToRefreshListView) findViewById(R.id.pull_refresh_list); // Mode.BOTH:支持下拉和上拉刷新。 mPullRefreshListView.setMode(Mode.BOTH); mPullRefreshListView .setOnRefreshListener(new OnRefreshListener2<ListView>() { // 下拉 @Override public void onPullDownToRefresh( PullToRefreshBase<ListView> refreshView) { Toast.makeText(getApplicationContext(), "下拉刷新", Toast.LENGTH_SHORT).show(); addItem(); } // 上拉 @Override public void onPullUpToRefresh( PullToRefreshBase<ListView> refreshView) { Toast.makeText(getApplicationContext(), "上拉刷新", Toast.LENGTH_SHORT).show(); addItem(); } }); // 列表到底,即看到最后一个元素。 mPullRefreshListView .setOnLastItemVisibleListener(new OnLastItemVisibleListener() { @Override public void onLastItemVisible() { Toast.makeText(getApplication(), "已经到底!", Toast.LENGTH_SHORT).show(); } }); ListView actualListView = mPullRefreshListView.getRefreshableView(); mListItems = new LinkedList<String>(); mAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, mListItems); actualListView.setAdapter(mAdapter); } // 添加数据 private void addItem() { new Handler().postDelayed(new Runnable() { @Override public void run() { mListItems.add((DATA++) + ""); mAdapter.notifyDataSetChanged(); mPullRefreshListView.onRefreshComplete(); } }, 1000); } }
需要的activity_main.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" > <com.handmark.pulltorefresh.library.PullToRefreshListView android:id="@+id/pull_refresh_list" android:layout_width="match_parent" android:layout_height="match_parent" android:divider="@android:color/black" android:dividerHeight="1dip" android:fastScrollEnabled="false" android:footerDividersEnabled="false" android:headerDividersEnabled="false" android:smoothScrollbar="true" /> </RelativeLayout>
技术QQ群:364595326
0 0
- Android下拉/上拉刷新ListView之Android-PullToRefresh
- Android下拉/上拉刷新ListView之Android-PullToRefresh
- Android下拉/上拉刷新ListView之Android-PullToRefresh
- Android PullToRefresh上拉和下拉刷新
- Android-PullToRefresh下拉刷新,上拉加载
- Android 下拉刷新上拉加载PullToRefresh
- Android 下拉刷新上拉加载 PullToRefresh
- Android ListView 下拉刷新 上拉刷新
- Android PullToRefresh 下拉刷新,上拉更多,支持ScrollView,ListView,可方便拓展GridView,WebView等
- android:ListView下拉刷新上拉加载更多(PullToRefresh框架抽取)
- 【Android-PullToRefresh】 上拉刷新、下拉加载 使用详解
- Android-PullToRefresh库实现上拉刷新下拉加载
- Android PullToRefresh下拉刷新,上拉加载的使用详解
- Android PullToRefresh (GridView 下拉刷新上拉加载)
- Android-PullToRefresh下拉刷新,上拉加载的使用详解
- Android-PullToRefresh下拉上拉刷新的库基本用法
- Android PullToRefresh下拉刷新,上拉加载的使用详解
- Android——PullToRefresh上拉加载下拉刷新
- 初来乍到,请多关照
- Poj 3661 Running(DP)
- Linux服务器性能检测常用工具
- 每日170227-29
- 前端之路——张根根篇
- Android下拉/上拉刷新ListView之Android-PullToRefresh
- 数据结构实验之栈六:下一较大值(二)
- c# Blob Mysql
- Linux下IPC主题一————消息队列
- tomcat部署war包不成功解决方法
- Lesson33 Out of the darkness
- 设N是一个四位数,它的 9 倍恰好是其反序数,求N的值。
- Z-Stack中的HOLD_AUTO_START编译分析
- Bitmap的加载