Android-分享一个对RecyclerView二次封装的库(EasyRecyclerView)

图片来源网络,入侵必删

在日常的Android开发当中,我们肯定会有使用到RecyclerView的需求,这里分享一个对RecyclerView二次封装的开源库——EasyRecyclerView。它基本上满足基本的开发需求,希望能帮看文章的小伙伴提高开发效率。

引入项目

implementation 'com.jude:easyrecyclerview:4.4.2'

截止我发布博客,开源库版本为4.4.2。想要查看最新版本请看开源库的wiki

使用示例

XML中创建:


开源库的作者提到,EasyRecyclerView本质上不是RecyclerView,上面所有属性不是必须的,可以选择性使用。

设置空白的View
app:layout_empty="@layout/view_empty"

代码中设置:

void setEmptyView(View emptyView)
设置错误的View
app:layout_error="@layout/view_error"

代码中设置:

void setErrorView(View errorView)
设置加载的View
app:layout_progress="@layout/view_progress"

代码中设置:

void setProgressView(View progressView)
跳到固定位置
void scrollToPosition(int position); 
刷新控制
void setRefreshing(boolean isRefreshing);
void setRefreshing(final boolean isRefreshing, final boolean isCallback); //第二个参数控制是否回调更新数据方法
整合了数据增删的功能
void add(T object);
void addAll(Collection collection);
void addAll(T ... items);
void insert(T object, int index);
void update(T object, int index);
void remove(T object);
void clear();
void sort(Comparator comparator);
整合的Header与Footer的实现
void addHeader(ItemView view)
void addFooter(ItemView view)  
整合OnItemClickListener与OnItemLongClickListener
adapter.setOnItemClickListener(new RecyclerArrayAdapter.OnItemClickListener() {
    @Override
    public void onItemClick(int position) {
        //position不包含Header
    }
});

adapter.setOnItemLongClickListener(new RecyclerArrayAdapter.OnItemLongClickListener() {
    @Override
    public boolean onItemLongClick(int position) {
        return true;
    }
});

以上功能是我之前项目开发中使用到的,更多详细的用法可以查看开源库文档。

你可能感兴趣的:(Android-分享一个对RecyclerView二次封装的库(EasyRecyclerView))