Android studio 下拉刷新,加载更多使用LoadingViewFinal

Android studio已经普遍了,开发过程中会使用到下拉刷新和加载更多,类似PULL-to-Refresh,xrecyclerview,SwipeRefreshLayoutd 等等。

现在介绍下最近git找到的下拉刷新,加载更多,很实用(群218801658,小生只是转载,转载。

支持ListView,GridView,REcyclerView,ScrollView,ExpandableListView等的下拉刷新和加载更多。

如图:

demo下载地址:


1.只介绍as怎么使用。

  • 使用加载更多控件库
compile 'cn.finalteam.loadingviewfinal:loading-more-view:1.0.1'
  • 采用SwipeRefreshLayout下拉刷新库
compile 'cn.finalteam.loadingviewfinal:swipe-refresh-layout:1.0.1'
  • 采用UPTR下拉刷新
compile 'cn.finalteam.loadingviewfinal:ultra-pull-to-refresh:1.0.1'
  • Load More Footer样式
compile 'cn.finalteam.loadingviewfinal:loading-more-style:1.0.1'
  • 如果你项目中使用了RecyclerView控件请添加
compile 'com.android.support:recyclerview-v7:23.2.1'//recyclerview随便哪个版本都可以,没有强制使用23.2.1

SwipeRefreshLayout和UPTR两个下拉刷新库可以二选一

2.代码详解

* 自动刷新

mPtrLayout.autoRefresh();

* 设置下拉刷新监听

mPtrLayout.setOnRefreshListener(new OnDefaultRefreshListener() {
    @Override
    public void onRefreshBegin(PtrFrameLayout frame) {
        //发起下拉刷新请求
        requestData(1);
    }
});

* 设置加载更多事件监听

mRecyclerViewFinal.setOnLoadMoreListener(new OnLoadMoreListener() {
    @Override
    public void loadMore() {
        //发起加载更多请求
        requestData(mPage);
    }
});

* 设置是否有更多

mRecyclerViewFinal.setHasLoadMore(true/false);

* 设置网络异常FooterView信息

mRecyclerViewFinal.showFailUI();

* 完成刷新或完成加载功能调用

if (page == 1) { //page == 1表示下拉下拉
    mPtrRvLayout.onRefreshComplete();//完成下拉刷新
} else {
    mRecyclerViewFinal.onLoadMoreComplete();//完成加载更多
}

* 自定义Load More View样式

设置自定义样式请在setAdapter之前

AVLoadMoreView avLoadMoreView = LoadMoreStyle.getAVLoadMoreViewFactory(context);
avLoadMoreView.setIndicatorColor(getResources().getColor(R.color.colorPrimary));    
avLoadMoreView.setIndicatorId(AVLoadingIndicatorView.BallPulse);
mRecyclerViewFinal.setLoadMoreView(avLoadMoreView);
  • 设置没有更多了是否隐藏footerview
mRecyclerViewFinal.setNoLoadMoreHideView(true/false);//默认false不隐藏

注:onLoadMoreComplete()一定要在setHasLoadMore()和showFailUI()之后调用

具体GIT地址:https://github.com/pengjianbo/LoadingViewFinal(纯属转载,为广大开发推荐好用的框架)


猜你喜欢

转载自blog.csdn.net/u010090644/article/details/50969815