Android RecyclerView上下拉刷新加载之PullToRefresh的结合使用

一言不合就上图

Android RecyclerView上下拉刷新加载之PullToRefresh的结合使用_第1张图片Android RecyclerView上下拉刷新加载之PullToRefresh的结合使用_第2张图片

我是用的第三方依赖PullToRefresh做的
这也就是个监听方法而已。
首先注入依赖:

//刷新pullToRefresh
    compile 'com.jwenfeng.pulltorefresh:library:1.0.3'

然后布局:

    <com.jwenfeng.library.pulltorefresh.PullToRefreshLayout
        android:id="@+id/pullToRefresh"
        android:layout_width="match_parent"
        android:layout_height="match_parent">

        //这里面可以定义你的需求控件(例如:listView,GridView...)
        //我的是recyclerView列表(如果要用recyclerView 需注入依赖)

        .support.v7.widget.RecyclerView
            android:id="@+id/recView"
            android:layout_width="match_parent"
            android:layout_height="match_parent">.support.v7.widget.RecyclerView>

    com.jwenfeng.library.pulltorefresh.PullToRefreshLayout>

然后在MainActivity里面初始化控件并设置监听

//初始化/找控件/获取资源ID
        PullToRefreshLayout ptr = (PullToRefreshLayout) findViewById(R.id.pullToRefresh);
        //设置监听setRefreshListener
        //然后生成刷新和加载的重写方法
        ptr.setRefreshListener(new BaseRefreshListener() {
            @Override
            //刷新的方法
            public void refresh() {
                //这里书写你的下拉刷新的业务需求逻辑
                if (list != null) {
                    initNet();
                }
                //别忘了关闭刷新的效果
                ptr.finishRefresh();
            }

            @Override
            //加载更多的方法
            public void loadMore() {
            //这里书写你的家在更多的业务需求逻辑
                if (list != null) {
                    list.addAll(list.size(), list);
                    recAdapter.notifyDataSetChanged();
                }
                //别忘了关闭加载更多的效果
                ptr.finishLoadMore();
            }
        });

这就OK了。

强调几点:
1我的Android studio是2.3.3版本,SDK用的v7…..26.+的
2为了显得代码简洁,导包我没搬过来,so 你们自己导吧
3如果访问网络:别忘记在AndroidManifest(注册清单)添加网络权限

<uses-permission android:name="android.permission.INTERNET"/>

你可能感兴趣的:(控件使用)