zoukankan      html  css  js  c++  java
  • 实现RecyclerView下拉刷新和上拉加载更多以及RecyclerView线性、网格、瀑布流效果演示

    实现RecyclerView下拉刷新和上拉加载更多以及RecyclerView线性、网格、瀑布流效果演示

    效果预览

    实例APP

    小米应用商店

    使用方法

    build.gradle文件

    dependencies {
      compile 'com.wuxiaolong.pullloadmorerecyclerview:library:1.0.4'
    }

    xml引用

     <com.wuxiaolong.pullloadmorerecyclerview.PullLoadMoreRecyclerView
            android:id="@+id/pullLoadMoreRecyclerView"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_margin="10dp" />

    设置线性布局

     mPullLoadMoreRecyclerView = (PullLoadMoreRecyclerView) view.findViewById(R.id.pullLoadMoreRecyclerView);
     mPullLoadMoreRecyclerView.setLinearLayout();

    设置网格布局

     mPullLoadMoreRecyclerView.setGridLayout(2);//参数为列数

    设置交错网格布局,即瀑布流效果

     mPullLoadMoreRecyclerView.setStaggeredGridLayout(2);//参数为列数

    绑定适配器

      mRecyclerViewAdapter = new RecyclerViewAdapter();
      mPullLoadMoreRecyclerView.setAdapter(mRecyclerViewAdapter);
    
    public class RecyclerViewAdapter extends RecyclerView.Adapter<RecyclerViewAdapter.ViewHolder> {
    
        public RecyclerViewAdapter() {
    
        }
    
        @Override
        public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
            View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.recycler_view_item, parent, false);
            return new ViewHolder(view);
        }
    
        @Override
        public void onBindViewHolder(ViewHolder holder, int position) {
    
        }
    
        @Override
        public int getItemCount() {
            return 0;
        }
    
        public class ViewHolder extends RecyclerView.ViewHolder {     
    
            public ViewHolder(View itemView) {
                super(itemView);
    
            }
        }
    }

    调用下拉刷新和加载更多

     mPullLoadMoreRecyclerView.setOnPullLoadMoreListener(new PullLoadMoreRecyclerView.PullLoadMoreListener() {
                @Override
                public void onRefresh() {
    
                }
    
                @Override
                public void onLoadMore() {               
    
                }
            });

    刷新结束

    mPullLoadMoreRecyclerView.setPullLoadMoreCompleted();

    其他方法

    不需要下拉刷新

    mPullLoadMoreRecyclerView.setPullRefreshEnable(false);

    不需要上拉刷新

    mPullLoadMoreRecyclerView.setPushRefreshEnable(false);

    设置上拉刷新文字

    mPullLoadMoreRecyclerView.setFooterViewText("loading");

    设置下拉刷新颜色

     mPullLoadMoreRecyclerView.setColorSchemeResources(android.R.color.holo_red_dark,android.R.color.holo_blue_dark);

    快速Top

      mPullLoadMoreRecyclerView.scrollToTop();



    源码下载:
        https://github.com/WuXiaolong/PullLoadMoreRecyclerView
  • 相关阅读:
    Android Apk获取包名和Activity名称
    SoupUI接口测试学习分享
    Android 手机自动化测试工具有哪几种?
    SVN和CVS的区别
    名词
    本地解析地址步骤
    python3.6.1+selenium3.0环境安装问题及解决方法
    简述企业信息化与企业架构关系
    企业架构实践的线下公开课学习感悟
    golang 12.9 go mod 实践
  • 原文地址:https://www.cnblogs.com/android-blogs/p/5354284.html
Copyright © 2011-2022 走看看