Android 上拉下拉刷新框架 PullUpToRefresh的使用
(下載地址:https://github.com/chrisbanes/Android-PullToRefresh)也可以去GitHub官網自己搜索
下載完成之後只解壓文件,只需要當前文件夾下的library文件,如圖 :
Android studio library導入流程如下圖:
彈出對話框,如圖:
選擇完成之後點擊next,finish接着如圖:
點擊Project Structure 彈出對話框如圖:
點擊Module dependency 彈出對話框如圖:
點擊OK等待完成,PullToRefresh刷新框架導入成功
PullToRefreshListView 控件的使用說明和流程:
PullToRefreshListView 的使用方法和Listiew 一樣,Listiew 能用的屬性方法,PullToRefreshListView 也能使用
不說了,直接上代碼:
第一步:和 ListView 一樣,在Xml中添加
<com.handmark.pulltorefresh.library.PullToRefreshListView android:id="@+id/listview" android:layout_width="match_parent" android:layout_height="match_parent" android:divider="@null" android:scrollbars="none" />
去掉右側滑動的滾動條
android:scrollbars="none"
去掉每一條item之間的間隔線
android:divider="@null"
第二步:在Activity中添加代碼
//初始化
PullToRefreshListView
PullToRefreshListView listview= (PullToRefreshListView) findViewById(R.id.listview);初始化完成後需要設置 PullToRefreshListView 的刷新方式和刷新文字
1、刷新方式
listview.setMode(PullToRefreshBase.Mode.BOTH);//兩端刷新
listview.setMode(PullToRefreshBase.Mode.PULL_FROM_START);//上拉刷新
listview.setMode(PullToRefreshBase.Mode.PULL_FROM_END);//下拉刷新2、刷新文字
//上拉文字設置 ILoadingLayout upText = listview.getLoadingLayoutProxy(false, true); upText.setPullLabel("上拉加載"); upText.setRefreshingLabel("加載中"); upText.setReleaseLabel("釋放加載"); //下拉文字設置 ILoadingLayout downText= listview.getLoadingLayoutProxy(true, false);
downText.setPullLabel("下拉刷新");
downText.setRefreshingLabel("正在刷新...");
downText.setReleaseLabel("鬆開刷新");第三步:設置刷新監聽方式(1、OnRefreshListener1 ;2、OnRefreshListener2)
第一種監聽只有下拉刷新監聽
第二種監聽實現上拉下拉監聽
現在只說第二種監聽上拉下拉監聽
listview.setOnRefreshListener(new PullToRefreshBase.OnRefreshListener2<ListView>() { @Override public void onPullDownToRefresh(PullToRefreshBase<ListView> refreshView) {
//處理刷新操作
Toast.makeText(MainActivity.this, "下拉刷新", Toast.LENGTH_SHORT).show();} @Override public void onPullUpToRefresh(PullToRefreshBase<ListView> refreshView) {
//處理加載操作
Toast.makeText(MainActivity.this, "上拉加載", Toast.LENGTH_SHORT).show();}}); 第四步:處理刷新加載數據之後關閉刷新動畫
listview.onRefreshComplete();最後PullToRefreshListView 展示數據代碼就寫了和ListView 一樣,自定義一個Adapter適配器 ,listview.setAdapter(new MyAdapter);
有要改善的可以留言,謝謝!