带你实现ViewGroup规定行数、item居中的流式布局

在写该文章之前自己也写了一个用RecyclerView实现的流式布局RecyclerView实现的流式布局,也得到一些关注,但是也有不少的朋友提出了相关的问题,比如想规定行数的流式布局,还有item高度不统一时动态显示item的位置问题。于是近两天就简单写了个ViewGroup实现的流式布局:

这里在时给出了四种情况的用例:
(一)文字统一高度,也就是默认的情况

默认情况.gif

这里详见:NormalLoadActivity

(二)不同高度的文本,没设置居中显示的情况

不同高度的文本,没设置居中显示的情况.gif
这里详见:DiffHeightTextActivity

(三)不同高度的文本,设置居中显示的情况
不同高度的文本,设置居中显示的情况.gif

这里详见:DiffHeightTextCenterActivity

(四)规定行数的流式布局
规定行数的文本.gif

这里详见:LineFlowActivity

属性:

 <declare-styleable name="FlowLayout">
      <!--文本是否居中-->
      <attr name="is_line_center" format="boolean" />
 </declare-styleable>

<declare-styleable name="LineFlowLayout">
      <!--规定行数-->
      <attr name="flow_line_count" format="integer" />
</declare-styleable>

<declare-styleable name="ScrollFlowLayout">
      <!--上边界阴影颜色-->
      <attr name="effect_top_color" format="color" />
      <!--下边界阴影颜色-->
      <attr name="effect_bottom_color" format="color" />
      <!--滑动到顶部或底部是否需要阴影效果-->
      <attr name="need_effect" format="boolean" />
</declare-styleable>

gradle依赖

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

dependencies {
        compile 'com.github.1002326270xc:FlowView-master:v1.1'
}

后期添加(自带滑动结构的流式布局):

自带滑动结构的流式布局.gif

这里详见:ScrollFlowActivity

thanks:这里滑动的处理借鉴的SuitLines(一个图标控件)、SwipeDelMenuLayout(侧拉菜单)

关于我:

email: a1002326270@163.com
简书:enter
github:enter

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值