利用 RecyclerView 的 LayoutManager 搭建流式布局

LayoutManager-FlowLayout

项目地址:1002326270xc/LayoutManager-FlowLayout 

简介:快速利用 RecyclerView 的 LayoutManager 搭建流式布局

更多:作者   提 Bug   

标签:

 

说真的自从对RecyclerViewLayoutManager有新的认识后,完全不用担心很多的复杂布局了。而且对ViewGroup测量过程也不用担心了,因为里面有LayoutManager帮我们实现了。下面就进入该篇文章的主题吧,废话不多说,直接上图更有说服力。

 

上面的示例图是我把ItemView分别用了TextViewImageView。其实这些是没什么好说的,主要是如何定义这样的LayoutManager。相信大家都用过了LinearLayoutManager吧,系统提供的LayoutManager都是对齐的方式进行排版的,我们这里的flow的样式就是在排版item之前,判断了该行多余的空间还够不够显示,如果不够直接换行显示的思路。

使用:

详见TextFlowActivityDiffHeightTextFlowActivityPhotoFlowActivity

RecyclerView recyclerView = (RecyclerView) findViewById(R.id.flow);
FlowLayoutManager flowLayoutManager = new FlowLayoutManager();
//设置每一个 item 间距
recyclerView.addItemDecoration(new SpaceItemDecoration(dp2px(10)));
recyclerView.setLayoutManager(flowLayoutManager);
recyclerView.setAdapter(new FlowAdapter());

RV 嵌套 RV 高度问题:

NestedRecyclerView recyclerView = (NestedRecyclerView) findViewById(R.id.flow);
FlowLayoutManager flowLayoutManager = new FlowLayoutManager(context);
//设置每一个 item 间距
recyclerView.addItemDecoration(new SpaceItemDecoration(dp2px(10)));
recyclerView.setLayoutManager(flowLayoutManager);
recyclerView.setAdapter(new FlowAdapter());

常见商品属性界面:

商品属性界面.gif

使用:见ProductActivity

常见悬浮商品属性界面:

商品属性界面.gif

使用:见SuspensionProductActivity

动画修复:

动画修复.gif

使用:见TextFlowActivity

viewpager 中流式布局应用:

viewpager 中流式布局.gif

使用:见ViewPagerActivity

常见长点击删除流式布局界面:

长点击删除界面.gif

  • 长点击删除图片问题

长点击显示删除图片界面.gif

使用:见LongClickDeleteTextFlowActivity

1.1 版本:

修复重复操作数据问题

1.2 版本:

修复重复操作数据错位以及暴露内容高度

1.3 版本:

修复中间添加数据时错位问题

1.4 版本:

���复动画问题

1.5 版本:

添加 RV 嵌套 RV 时 wrap_content 不显示问题

1.6 版本:

解决某些机型在 wrap_content 不显示问题

1.7 版本:

修复清空数据滑动页面还在显示的问题

gradle 依赖:

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

dependencies {
        compile 'com.github.1002326270xc:LayoutManager-FlowLayout:v1.7'
}

demo 第一时间体验:

欢迎大家提出问题,留言板留言或邮箱直接联系我。我会第一时间测试相关的 bug

欢迎客官到本店光临(qq 群):

您的鼓励就是给作者最大的支持,或是请我喝杯咖啡也行,哈哈哈~~~

关于我:

email: a1002326270@163.com

简书: http://www.jianshu.com/users/7b186b7247c1/latest_articles

csdn: http://blog.csdn.net/u010429219/article/details/64915136

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值