含有过滤功能的android流式布局

FilterFlowLayout是一种带有过滤功能的流式布局方案,适用于Android 4.0及以上版本。它能排除不符合宽度要求的子视图,并支持设置最大显示行数、组件间的水平间距及行间距。本文介绍了其XML配置项及API方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

FilterFlowLayout

含有过滤功能的流式布局, 參考FlowLayout

  • 能够去除宽度不在范围(比例或真实值)内的子view
  • 能够设置最大行数
  • 能够加入组件间水平间距
  • 能够加入行间距

截图

系统要求

Android 4.0以上

高速使用

<me.codeboy.android.lib.FilterFlowLayout
    xmlns:cb="http://schemas.android.com/apk/res-auto"
    android:id="@+id/filterFlowLayout"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    cb:maxWidthRatio="0.5"
    cb:minWidth="80dp"
    cb:maxLines="3"
    cb:horizontalGap="5dp"
    cb:verticalGap="5dp"
    >
  • 最大宽度为FlowLayout的宽度的一半
  • 最小宽度是80dp
  • 最大行数为3行
  • 水平间距为5dp
  • 垂直间距为5dp

xml配置

maxWidthRatio  最大宽度比例,相对于FlowLayout的总宽度,默认-1
minWidthRatio  最小宽度比例,相对于FlowLayout的总宽度。默认-1
maxWidth       最大宽度,默认0
minWidth       最小宽度。默认0
maxLines       最大显示行数,默认Integer.MAX_VALUE
horizontalGap  每一行子试图之间的空隙。默认是0
verticalGap    多行式行空隙,默认是0

相关方法

setMaxChildWidth(float maxChildWidth)  //设置最大宽度
setMinChildWidth(float minChildWidth)  //设置最小宽度
setMaxLines(int maxLines)              //设置最大行数
setHorizontalGap(int horizontalGap)    //设置水平间距
setVerticalGap(int verticalGap)        //设置垂直间距

注意事项

  • xml中同一时候设置宽度的比例与详细值时。比例(ratio)的优先级高于真实值。

  • 宽度都不设置时,最大宽度为FlowLayout的宽度。

转载于:https://www.cnblogs.com/jzssuanfa/p/7002136.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值