关于Android RecyclerView的那些开源LayoutManager

原文地址:http://blog.coderclock.com/2017/03/26/android/%E5%85%B3%E4%BA%8EAndroid%20RecyclerView%E7%9A%84%E9%82%A3%E4%BA%9B%E5%BC%80%E6%BA%90LayoutManager/

Google默认为RecyclerView提供了LinearLayoutManager、StaggeredGridLayoutManager、GridLayoutManager,已经可以满足很多开发需求了,但是实际开发过程中,免不了出现一些更加新颖的交互设计。于是,便从Github上整理了一波关于RecyclerView可以使用的LayoutManager,在实际开发中需要用到时,遇到相似的效果时即可随手拈来,提高效率。

FanLayoutManager

Github源码地址:https://github.com/Cleveroad/FanLayoutManager

来自国外一家名为Cleveroad的科技公司的开源作品,因其效果就像风扇扇叶旋转一样,所以名中带Fan。效果不错,API上也有很多的配置参数,用起来还是挺灵活的。

CarouselLayoutManager

Github源码地址:https://github.com/Azoft/CarouselLayoutManager

让你的RecyclerView秀出传送带效果,支持横向和纵向两种选择。

ChipsLayoutManager

Github源码地址:https://github.com/BelooS/ChipsLayoutManager

一种流式布局的效果,很像我们平时看到的标签云。该库同样提供了很多可配置效果的API,并且支持多种多花效果。

HiveLayoutManager

Github源码地址:https://github.com/Chacojack/HiveLayoutManager

国人写的一个蜂巢布局管理器,除了外观帅气外,其增删查改的动画效果也是很赞的。

vlayout

Github源码地址:https://github.com/alibaba/vlayout

vlayout 是手机天猫 Android 版内广泛使用的一个基础 UI 框架项目,提供了一个用于 RecyclerView 的自定义的 LayoutManger,可以实现不同布局格式的混排,目标是支撑客户端 native 页面的快速开发,它也是 Tangram 框架的基础模块。

flexbox-layout

Github源码地址:https://github.com/google/flexbox-layout

flexbox-layout是Google开源的布局,其效果是实现类似CSS中的Flexbox布局效果( 具体可看:https://www.w3cplus.com/css3/a-guide-to-flexbox-new.html ),原本并不支持RecyclerView,但其最新的Alpha版本已经开始推出FlexboxLayoutManager用于支持RecyclerView实现效果。

LondonEyeLayoutManager

Github源码地址:https://github.com/danylovolokh/LondonEyeLayoutManager

一个环形菜单的布局管理器,以前在建行的Android客户端就见过此效果,不过那时候是用ViewGroup实现的。

时间: 2024-08-07 08:36:38

关于Android RecyclerView的那些开源LayoutManager的相关文章

浅谈Android RecyclerView

Android RecyclerView 是Android5.0推出来的,导入support-v7包即可使用. 个人体验来说,RecyclerView绝对是一款功能强大的控件. 首先总结下RecyclerView的特点: 1.支持不同方向,不同排版模式,实现多种展现数据的形式,涵盖了ListView,GridView,瀑布流等数据表现的形式 2.内部实现了回收机制,无需我们考虑View的复用情况 3.取消了onItemClick等点击事件,需要自己手动去写 -------------------

Android RecyclerView: Super Fast ListView 超级快速的Lis

Android RecyclerView: Super Fast ListView 原文来自我的微信公众号: longkai_1991 先上图,看效果: 前几天刚release完公司的一个项目,有了点时间,于是就想找一些有意思的东西学习一下,顺便运用在项目之中.看到iOS的同事们在谈论iOS8的xx特性时,我突然也有想在公司项目的下一个版本中添加Android L版本的特性. 六月底的时候收看Google io时,当时对Android新的设计语言,Material Design,没什么太大的好感

Android RecyclerView单击、长按事件标准实现:基于OnItemTouchListener + GestureDetector

?? Android RecyclerView单击.长按事件:基于OnItemTouchListener + GestureDetector标准实现 Android RecyclerView虽然拥有ListView绝大多数的功能,但Android RecyclerView却没有实现像ListView那样的点击事件.长按事件的标准实现方式,我在附录文章1中介绍的方式,实现了典型的RecyclerView的item点击事件,大致的思路是通过为RecyclerView的ViewHolder添加View

Android RecyclerView的基本使用

Android RecyclerView 在去年的Google I/O大会上就推出来了,以前经常使用的ListView 继承的是AbsListView,而RecyclerView则直接继承 ViewGroup,并实现了ScrollingView 和 NestedScrollingChild接口,RecyclerView相比ListView,是一次彻底的改变,RecyclerView 比ListView更加强大灵活. DEMO实现功能: RecyclerView的点击事件: Item及item中的

[Android]RecyclerView的简单示例

去年google的IO上就展示了一个新的ListView,它就是RecyclerView. 以下是官方的说明,我英语能力有限,不过我大概这么理解:RecyclerView会比ListView更具有拓展性,使用更有效率,而且更灵活了,具体怎么样,时隔一年,我们也发现了它越来越强大,所以有必要去认识一下这个小伙伴了. The RecyclerView widget is a more advanced and flexible version of ListView. This widget is

Android RecyclerView 基本使用

Android RecyclerView 基本使用 概述 RecyclerView出现已经有一段时间了,相信大家肯定不陌生了,大家可以通过导入support-v7对其进行使用. 据官方的介绍,该控件用于在有限的窗口中展示大量数据集,其实这样功能的控件我们并不陌生,例如:ListView.GridView. 那么有了ListView.GridView为什么还需要RecyclerView这样的控件呢?整体上看RecyclerView架构,提供了一种插拔式的体验,高度的解耦,异常的灵活,通过设置它提供

Android动态换肤开源库Colorful发布

最近本人需要用到夜间模式,但是经过一番搜索似乎并没有看到好的开源实现,看到有一个类似的库MultipleTheme,但是需要自定义所有要实现换肤功能的View,感觉比较麻烦.当发现现有的解决方案不能很好的解决问题时,往往只能自己实现,因此本人花了点时间简单弄了一个实现该功能的开源库,命名为Colorful. Colorful是基于Theme,无需重启Activity.无需自定义View,方便的实现日间.夜间模式,github地址为 https://github.com/bboyfeiyu/Col

Android二维码开源项目zxing用例简化和生成二维码、条形码

上一篇讲到:Android二维码开源项目zxing编译,编译出来后有一个自带的测试程序:CaptureActivity比较复杂,我只要是把一些不用的东西去掉,用看起来更方便,二维码和条形码的流行性自不必说了. 自带的例子,目录结构如下: 修改后的程序目录结构,去掉了很多功能,如果分享.设置等. 先上效果图          扫描ZXing生成的条形码和二维码结果 扫描界面 扫描商品的条码 整个程序只修改了以下两个类,其它都是直接从原来的Demo中复制出来的 生成二维码的代码 /** * 生成二维

Android已上线应用开源分享中(第一季)

这是我上线的第一个android应用,在百度.腾讯.豌豆荚等平台测试通过,也有了部分用户,还是可以的啊,哈哈.现在分享给大家,当然,源码我也会分享. 1.软件是一个管理wifi的小工具 (1)查询.连接周围wifi信号,查看当前使用的wifi信号的基本信息(wifi名称.信号强度等) (2)管理使用过的wifi信号,可以设置不同信号的优先级,在开启自动连接wifi服务的功能时,系统会按照设置的优先级自动连接当前可用wifi信号中优先级最高的信号.其中设置屏蔽的信号不会被连接. (3)查看周围wi