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
  • 相关阅读:
    苹果p12文件--一个苹果证书怎么多次使用(蛋疼,这些问题只有和其他企业合作才会遇到,别人的账号不可能给你,蛋疼....)
    xcode 树形管理 cocos2d-x的资源
    cocos2d-x 扩充引擎基类功能 引起的头文件重复包含问题的分析
    pytest--运行指定的测试和参数化
    adb--常用命令
    appium--desktop
    adb--环境安装
    pytest--命令行常用参数
    django -- auth模块
    pytest--常用插件
  • 原文地址:https://www.cnblogs.com/android-blogs/p/5354284.html
Copyright © 2011-2022 走看看