如何为 SwipeRefreshLayout 设置下拉刷新功能

5

我看到很多用于ListView下拉刷新的库。但是它们只能在从上往下拉时起作用,那么当我从下往上拉时该怎么刷新呢?我可以使用SwipeRefreshLayout来实现吗?如果不行,我应该使用哪个库?如何实现这个功能?


你可以重写onTouch并实现它。 - Blackbelt
1
只需编辑任何库,它们中的大多数都使用 onTouch() 事件,在 MotionEvent.ACTION_DOWN 中放置您的逻辑,并检查列表是否到达末尾,请使用 if ((firstVisibleItem+visibleItemCount) == totalItemCount),然后简单地刷新即可。 - Sagar Pilkhwal
@SagarPilkhwal,感谢您提供的示例,但是您能否请说明您会使用哪个库? - OWADVL
1个回答

2

使用chrisbanes的库: https://github.com/chrisbanes/Android-PullToRefresh,该库支持listview、gridview、scrollview、webview等...

要从底部刷新listview,只需要设置它的模式。以下是一个例子:

PullToRefreshListView ptr= 
  (PullToRefreshListView) findViewById(R.id.listview);
mPullRefreshListView.setMode(Mode.BOTH);    // mode refresh for top and bottom
mPullRefreshListView.setShowIndicator(false); //disable indicator
mPullRefreshListView.setPullLabel("Loading");

 ptr.setOnRefreshListener(new OnRefreshListener<ListView>() {
            public void onRefresh(PullToRefreshBase<ListView> refreshView) {
          //do something when refresh
});

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接