Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> Android-PullToRefresh實現進入自動刷新

Android-PullToRefresh實現進入自動刷新

編輯:關於Android編程

PullToRefreshScrollView實現自動刷新

 

目的:

使用Android-PullToRefresh的PullToRefreshScrollView,想在第一次進入的時候顯示正在加載設置了setRefreshing(true);但是他沒有加載數據

發現api 上 有兩個方法滿足需求一個是:
public void setRefreshing();

    /**
             * Sets the Widget to be in the refresh state. The UI will be updated to
             * show the 'Refreshing' view.
             * 
             * @param doScroll - true if you want to force a scroll to the Refreshing
     *            view.
     */

我果斷使用第一個方法發現不行 ,後來發現群上其他的人在做網易新聞客戶端時,處理過這個問題。但是也不是很好的處理辦法,

new Handler().postDelayed(new Runnable() {

        @Override
        public void run() {
        mPullToRefreshScrollView.setRefreshing();
        }
}, 3000);

但是這不是最好的處理辦法,我把源碼翻遍,也只得到一些還不知道是否正確的結論,是說還未獲取到頂部下拉刷新的高度,適當的延時即可。

因為我的項目中我使用的是androidannotations 開發,所以,我結合以上的思路,自己修改了我的代碼邏輯,實現如下

   @UiThread(delay = 1000)
         void setRefrsh() {
             mScrollView.setRefreshing(true);
         }
         @Override
         public void onResume() {
             super.onResume();
             setRefrsh();
         }

需要注意的是需要 實現

 mScrollView.setOnRefreshListener(new PullToRefreshBase.OnRefreshListener() {

            @Override
            public void onRefresh(PullToRefreshBase refreshView) {
                getUserInfo();
            }
        });

要在獲取數據完成後再次調用 :

mScrollView.onRefreshComplete();    

即可實現!

 

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved