Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> Android-PullRefreshLayout

Android-PullRefreshLayout

編輯:關於Android編程

項目地址:Android-PullRefreshLayout" target="_blank">Android-PullRefreshLayout

簡介:基於SwipeRefreshLayout,通吃所有的AbsListView、RecyclerView

Android-PullRefreshLayout

基於SwipeRefreshLayout下拉刷新、上拉加載。支持所有的AbsListView、RecycleView

特點

  • 在layout中使用,支持AbsListView所有的 xml 屬性
  • 支持自動下拉刷新,什麼用呢?比如進入界面時,只需要調用autoRefresh()方法即可,同時下拉刷新回調函數將會被調用。
  • 上拉加載支持自定義View或設置加載文字、動畫
  • 輕松設置Adapter空數據視圖,默認為TextView支持更文字,也可自定義View
  • 對於簡單的界面,如只有ListView可以繼承app包中Fragment輕松搞定

效果圖

\

使用

仔細看listSelector屬性,效果見sample


設置上拉加載,更多方法見IFooterLayout

        IFooterLayout footerLayout = swipeRefreshListView.getFooterLayout();
        footerLayout.setFooterText("set 自定義加載");
        footerLayout.setIndeterminateDrawable(getResources().getDrawable(R.drawable.footer_progressbar));

        pr:footer_text="數據正在加載中"
        pr:footer_indeterminate_drawable="@drawable/footer_progressbar"

自定義上拉加載

方式一:注意此方法必須在setOnListLoadListener之前調用
        getSwipeRefreshLayout().setFooterResource(R.layout.swipe_refresh_footer);
方式二:xml 屬性
        pr:footer_layout="@layout/swipe_refresh_footer"
方式三:繼承重寫getFooterResource()方法
        public class MySwipeRefreshGridView extends SwipeRefreshGridView {

            @Override
            protected int getFooterResource() {
                return R.layout.swipe_refresh_footer;
            }
        }

設置 adapter 空數據視圖文字

        swipeRefreshListView.setEmptyText("數據呢?");

自定義 adapter 空數據視圖

        ImageView emptyView = new ImageView(getContext());
        emptyView.setImageResource(R.mipmap.empty);
        swipeRefreshGridView.setEmptyView(emptyView);

調用autoRefresh自動刷新,那麼注冊ListView長按事件怎麼辦?好辦提供了方法getScrollView()取出 又有問題了既然能取到ListView那SwipeRefreshLayout是不是也可以取到呢? 答案是肯定的,方法getSwipeRefreshLayout取出,你可以隨心所欲了,設置下拉圓圈的顏色、大小等。 關於更多公開方法見ISwipeRefresh

使用 Gradle 構建時添加一下依賴即可:

compile 'com.mylhyl:pullrefreshlayout:1.2.3'

如果使用 eclipse可以點擊這裡下載 jar 包

但是由於jar不能打包res原因,將影響xml屬性的使用,手動拷貝attrs到自己的項目中. 也可以clone源碼,然後在 eclipse 中用library方式引用

下載 APK 體驗

1.0.0
初始版本
1.1.0
修改類訪問權
1.2.0
優化內部業務邏輯
1.2.1
修復嵌套ViewPage引起的沖突
1.2.2
增加attrs屬性 可在xml中配置footer參數
1.2.3
子視圖上滑沖突方案由OnScrollListener改為重寫canChildScrollUp
  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved