码迷,mamicode.com
首页 > 移动开发 > 详细

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

时间:2015-07-10 23:48:38      阅读:417      评论:0      收藏:0      [点我收藏+]

标签:布局   android 4.0   android   

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的宽度。

版权声明:本文为博主原创文章,未经博主允许不得转载。

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

标签:布局   android 4.0   android   

原文地址:http://blog.csdn.net/dliyuedong/article/details/46835607

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!