用PullToRefresh實現下拉刷新

       之所以使用下拉刷新的功能,是因爲突然想到後面可能會在書庫這裏給用戶提供一些推薦,這種最好就是使用下拉刷新(簡單的說  就是模仿了宜搜小說的書架)。
       Android中有很多時候都會用到上下刷新,這是一個很常用的功能,Android的V4包中也提供了一種原生的下拉刷新控件——SwiperRefreshLayout,可以用他實現非常簡潔的刷新效果,正因爲它太簡潔,所以我就果斷的使用了第三方的下拉刷新控件——PullToRefresh。它的功能非常強大,但是在這個項目裏面暫時是使用了下拉刷新的效果。效果圖如下:

 

                                   

1、安裝並導入PullToRefresh框架

        在這之前都是使用的jar包,沒有直接使用別人的模塊。而PullToReresh就是這個模塊,所以一開始花了很多的時間,導進去出現了很多的錯。不過最後還是機智的解決了。

        PullToRresh需要去Github上下載(https://github.com/Yalantis/Phoenix),直接點擊Clone or Download就可以,下載下來後,解壓、找到其中的library文件夾,後面只需要使用這個文件夾中的內容。

        在Android Studio項目中點擊File > new > import module 。然後選擇上面的library文件夾的位置,並重新修改名字,這裏我改成PullToRefersh。我這裏面因爲已經導入所以報了錯

         

    導入以後先不要急着同步,需要改幾個地方。

        第一個就是settings.gradle.中在‘:app’後面接上‘PullToRefresh’也就是上面修改的名字。

        第二個就是PullToRefresh文件夾裏面的bulid.gradle修改其中的內容。其實這個內容可以直接複製你創建的app文件夾中的這個文件。但是不要忘記刪除 defaultConfig中的 applicationId +"包名",這個是唯一的,所以最好刪除。

        

    第三個就是在app文件夾下的build.gradle的dependencies中增加編譯的項——compile project(":PullToRefresh")。這裏的名字是你修改的名字。

2、使用PullToRefresh框架

        在上面我們已經完成了準備工作,萬事俱備只欠東風。

        首先在書庫的佈局文件的listView的兩端添加pullToRefreash這個控件。

                           

然後就在Fragement的那個類中獲取控件以及設置下拉刷新。

        mPullToRefreshView=(PullToRefreshView)book_view.findViewById(R.id.pull_to_refresh);
        mPullToRefreshView.setOnRefreshListener(new PullToRefreshView.OnRefreshListener() {
            @Override
            public void onRefresh() {
                Log.i("1111","刷新開始");
                mPullToRefreshView.postDelayed(new Runnable() {
                    @Override
                    public void run() {
                        mPullToRefreshView.setRefreshing(false);
                        Log.i("1111", "刷新結束");
                    }
                }, 3000);//3秒刷新

            }


        });

  到此下拉刷新的功能就可以在手機運行出來了。
    

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章