All Projects → CarGuo → Lazyrecycleradapter

CarGuo / Lazyrecycleradapter

Licence: mit
极简通用的RecyclerAdapter,入侵性低,支持一个列表多种Item类型,无需维护和编写Adapter代码,快速集成拥有点击,动画,自定义刷新,自定义加载更多,自定义空页面显示,通用分割线,动态绑定等高复用,你只需要编写维护Holder代码。

Programming Languages

java
68154 projects - #9 most used programming language
kotlin
9241 projects

Projects that are alternatives of or similar to Lazyrecycleradapter

Animatedrecyclerview
RecyclerView with layout animations
Stars: ✭ 220 (-12.35%)
Mutual labels:  recyclerview
Overscroll Decor
Android: iOS-like over-scrolling effect applicable over almost all scrollable Android views.
Stars: ✭ 2,671 (+964.14%)
Mutual labels:  recyclerview
Parallaxrecyclerview
Parallax effect on every item of your RecyclerView.
Stars: ✭ 237 (-5.58%)
Mutual labels:  recyclerview
Lrecyclerview
RecyclerView下拉刷新,自动加载更多;仿IOS侧滑Item删除菜单(盼望大家扩展更多功能)
Stars: ✭ 2,466 (+882.47%)
Mutual labels:  recyclerview
Sugaradapter
Make RecyclerView.Adapter Great Again!
Stars: ✭ 229 (-8.76%)
Mutual labels:  recyclerview
Mjolnirrecyclerview
[DEPRECATED] This library is no longer maintained and it will not receive any more updates.
Stars: ✭ 233 (-7.17%)
Mutual labels:  recyclerview
Recycler View Margin Decoration
A library for add margin each item in RecyclerView.
Stars: ✭ 217 (-13.55%)
Mutual labels:  recyclerview
Snaphelperexample
SnapHelper Example for Android Application
Stars: ✭ 245 (-2.39%)
Mutual labels:  recyclerview
Reswipecard
a light lib for swipe the cards implemented by RecyclerView
Stars: ✭ 230 (-8.37%)
Mutual labels:  recyclerview
Shswiperefreshlayout
Android 升级版 SwipeRefreshLayout,支持RecyclerView、ScrollView等大部分组件,下拉刷新(Refresh)和上拉加载(Loadmore),支持自定义HeaderView和FooterView
Stars: ✭ 236 (-5.98%)
Mutual labels:  recyclerview
Admobadapter
It wraps your Adapter to display Admob native ads and banners in a ListView/RecyclerView data set. It based on the Yahoo fetchr project https://github.com/yahoo/fetchr
Stars: ✭ 224 (-10.76%)
Mutual labels:  recyclerview
Rvparallaximageview
RvParallaxImageView用在recyclerview的item中,它可以随着recyclerview进行视差效果的移动,进而可以在一个小区域的item中展示一个完整的图片。适用于在recyclerview的item中显示大的广告图。
Stars: ✭ 224 (-10.76%)
Mutual labels:  recyclerview
Recyclerviewhelper
RecyclerView功能拓展
Stars: ✭ 235 (-6.37%)
Mutual labels:  recyclerview
Async Expandable List
Stars: ✭ 221 (-11.95%)
Mutual labels:  recyclerview
Pagerecyclerview
PageRecyclerView achieves page turning function and unlimited carousel
Stars: ✭ 241 (-3.98%)
Mutual labels:  recyclerview
Commonadapter
一个适用于ListView/GridView/RecyclerView的Adapter库,简化大量重复代码,支持多种布局,可自定义图片加载的实现。
Stars: ✭ 219 (-12.75%)
Mutual labels:  recyclerview
Dsladapter
🔥 Kotlin时代的Adapter, Dsl 的形式使用 RecyclerView.Adapter, 支持折叠展开, 树结构,悬停,情感图状态切换, 加载更多, 多类型Item,侧滑菜单等
Stars: ✭ 231 (-7.97%)
Mutual labels:  recyclerview
Linkage Recyclerview
即使不用饿了么订餐,也请务必收藏好该库!🔥 一行代码即可接入,二级联动订餐列表。
Stars: ✭ 2,970 (+1083.27%)
Mutual labels:  recyclerview
Adapterdelegates
"Favor composition over inheritance" for RecyclerView Adapters
Stars: ✭ 2,735 (+989.64%)
Mutual labels:  recyclerview
Pageindicator
An Instagram like page indicator compatible with RecyclerView and ViewPager.
Stars: ✭ 236 (-5.98%)
Mutual labels:  recyclerview

这个一个极简的通用RecyclerView的Adapter,入侵性低,一个Adapter解决日常开发中常用的各种功能,你无需再写任何Adapter代码,让你普通的RecyclerView变得灵活、解耦、通用、丰富起来吧。

Build Status

一、功能

状态 功能
支持 系统RecyclerView和任意数据实体
支持 动态加载各种Item类型的列表、瀑布流、网格
支持 列表、瀑布流、网格的刷新和加载更多效果,支持上下左右各个方向
支持 自定义刷新和加载效果
支持 内置支持各种列表和方向的万能分割线
支持 点击和长按效果
支持 空页面
支持 Item的动画效果
支持 Header头支持
支持 一种数据实体对应多种Item
支持 侧滑、拖拽
支持 快速实现聊天模式(DEMO包含Dagger2、MVP、RxJava2、Realm、键盘弹出优化处理)
支持 Kotlin与Kotlin Demo(Dagger2、MVP、RxJava2、(Realm、Room))
待支持 内置更多自定义Manager

二、依赖

在你的项目project下的build.gradle添加

allprojects {
	repositories {
		...
		maven { url 'https://jitpack.io' }
	}
}

在module下的build.gradle添加依赖

dependencies {
    compile 'com.github.CarGuo.LazyRecyclerAdapter:CommonRecycler:v4.0.0'
}

(Kotlin)在module下的build.gradle添加依赖

dependencies {
    compile 'com.github.CarGuo.LazyRecyclerAdapter:CommonRecycler-Kotlin:v4.0.0'
}

公众号

三、效果

更多效果请看DEMO

聊天DEMO中包含Dagger2、MVP、RxJava2、Realm、Factory模式、键盘弹出优化处理。

四、使用方法

1、创建管理器

管理器绑定数据、布局、Holder。其中XXXHolder需要继承BindRecyclerBaseHolder。

(BindRecyclerBaseHolder是一个继承了RecyclerView.ViewHolder的基类。)

//创建管理器
BindSuperAdapterManager normalAdapterManager = new BindSuperAdapterManager();
//将数据Model类、布局layoutId、RecyclerView.ViewHolder绑定
normalAdapterManager
        .bind(BindImageModel.class, R.layout.horizontal_image_item, BindImageHolder.class)
        .bind(BindTextModel.class, R.layout.horizontal_text_item, BindTextHolder.class)
        .bind(BindClickModel.class, R.layout.horizontal_click_item, BindClickHolder.class)
        .bindEmpty(BindNoDataHolder.NoDataModel.class, BindNoDataHolder.ID, BindNoDataHolder.class)

2、创建Adapter,设置RecyclerView

//通过管理器构建Adapter
BindSuperAdapter adapter = new BindSuperAdapter(context, normalAdapterManager, datas);

recycler.setLayoutManager(staggeredGridLayoutManager);
recycler.setAdapter(adapter);

更多高级用法请看Demo与wiki 文档

License

本项目把XRecyclerView的部分功能拆解到Adapter。


MIT


Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].