Bootstrap

ConstraintLayout支持的大部分属性

ConstraintLayout是Android中的布局容器,在使用时需要掌握它支持的属性,以下是ConstraintLayout常用属性:

属性名数据类型说明
app:layout_constraintWidth_defaultenum宽度默认值,可选为wrap, match
app:layout_constraintWidth_mindimension宽度最小值
app:layout_constraintWidth_maxdimension宽度最大值
app:layout_constraintHeight_defaultenum高度默认值,可选为wrap, match
app:layout_constraintHeight_mindimension高度最小值
app:layout_constraintHeight_maxdimension高度最大值
app:layout_constraintCirclereference与参考视图建立圆形连接,要求两个视图中心重合并且使用layout_constraintCircleRadius属性指定圆半径
app:layout_constraintCircleAnglefloat与参考视图建立圆形连接时的起始角度
app:layout_constraintCircleRadiusdimension与参考视图建立圆形连接时的圆半径
app:layout_constraintEnd_toEndOfreference与参考视图的结束位置对齐
app:layout_constraintEnd_toStartOfreference与参考视图的开始位置对齐
app:layout_constraintStart_toEndOfreference起始位置对齐参考视图的结束位置
app:layout_constraintStart_toStartOfreference起始位置对齐参考视图的起始位置
app:layout_constraintTop_toTopOfreference与参考视图的顶部对齐
app:layout_constraintTop_toBottomOfreference与参考视图的底部对齐
app:layout_constraintBottom_toBottomOfreference与参考视图的底部对齐
app:layout_constraintBottom_toTopOfreference与参考视图的顶部对齐
app:layout_constraintHorizontal_weightfloat水平方向的权重,指定多个视图中分配额外空间的比例
app:layout_constraintVertical_weightfloat垂直方向的权重,指定多个视图中分配额外空间的比例
app:layout_constraintHorizontal_chainStyleenum水平方向的对齐方式,可选为:spread,spread_inside,packed
app:layout_constraintVertical_chainStyleenum垂直方向的对齐方式,可选为:spread,spread_inside,packed
app:layout_constraintHorizontal_biasfloat水平方向上的偏移百分比,0表示左对齐,1表示右对齐
app:layout_constraintVertical_biasfloat垂直方向上的偏移百分比,0表示顶部对齐,1表示底部对齐
app:layout_constraintDimensionRatiostring尺寸比例,如2:3表示宽高比为2:3
app:layout_constraintHorizontal_alignenum水平方向上的对齐方式,可选为: right, left, center, start, end
app:layout_constraintVertical_alignenum垂直方向上的对齐方式,可选为:bottom, top, center, baseline
app:layout_constraintWidth_percentfloat宽度相对于父布局宽度的百分比,0表示宽度为0,1表示宽度和父布局一致
app:layout_constraintHeight_percentfloat高度相对于父布局高度的百分比,0表示高度为0,1表示高度和父布局一致
app:layout_constraintWidthdimension指定宽度值,默认为wrap_content,可选为wrap_content, match_constraints, dimension
app:layout_constraintHeightdimension指定高度值,默认为wrap_content,可选为wrap_content, match_constraints, dimension

以下是更多的ConstraintLayout属性详细介绍:

  1. app:layout_constraintStart_toStartOf

将此view的开始边与另一个view的开始边对齐,或将此view的开始边与布局的开始边对齐。

可选值:reference.

  1. app:layout_constraintStart_toEndOf

将此view的开始边与另一个view的结束边对齐。

可选值:reference.

  1. app:layout_constraintTop_toTopOf

将此view的顶部边与另一个view的顶部边对齐,或将此view的顶部边与布局的顶部边对齐。

可选值:reference.

  1. app:layout_constraintTop_toBottomOf

将此view的顶部边与另一个view的底部边对齐。

可选值:reference.

  1. app:layout_constraintBottom_toBottomOf

将此view的底部边与另一个view的底部边对齐。

可选值:reference.

  1. app:layout_constraintBottom_toTopOf

将此view的底部边与另一个view的顶部边对齐。

可选值:reference.

  1. app:layout_constraintHorizontal_weight

指定在horizontal方向上布局中额外空间的分配比例。例如,如果自动布局需要增加一些空间,则将按权重比例分配。

可选值:float.

  1. app:layout_constraintVertical_weight

指定在vertical方向上布局中额外空间的分配比例。例如,如果自动布局需要增加一些空间,则将按权重比例分配。

可选值:float.

  1. app:layout_constraintHorizontal_chainStyle

指定在horizontal方向上排列一组相关视图的行为。

可选值:spread | spread_inside | packed.

  • spread: 将空间均匀分配给视图,使它们沿水平轴展开。

  • spread_inside: 与spread相同,但不包括第一个和最后一个视图之间的空间。用于内部边距布局。

  • packed: 收紧沿水平轴排列的视图,将它们沿中心线对齐,而不是均匀分布。

  1. app:layout_constraintVertical_chainStyle

app:layout_constraintHorizontal_chainStyle类似,指定在vertical方向上排列一组相关视图的行为。

可选值:spread | spread_inside | packed.

  1. app:layout_constraintHorizontal_bias

指定此view在horizontal方向上与关联视图的开始位置之间的偏移量,作为与关联视图的距离的一部分。

可选值:float,0表示左对齐,1表示右对齐。

  1. app:layout_constraintVertical_bias

指定此view在vertical方向上与关联视图的上部位置之间的偏移量,作为与关联视图的距离的一部分。

可选值:float,0表示顶部对齐,1表示底部对齐。

  1. app:layout_constraintDimensionRatio

指定view的宽高比。

可选值:string.

  1. app:layout_constraintHorizontal_align

指定此view与关联视图在horizontal方向上对齐的类型。例如,可以让此view的左端对齐关联视图的左边/右边(app:layout_constraintLeft_toLeftOf或app:layout_constraintLeft_toRightOf)。

可选值:right | left | center | start | end.

  1. app:layout_constraintVertical_align

指定此view与关联视图在vertical方向上对齐的类型。例如,可以让此view的底端对齐关联视图的底部/顶部(app:layout_constraintBottom_toBottomOf或app:layout_constraintBottom_toTopOf)。

可选值:bottom | top | center | baseline.

  1. app:layout_constraintWidth_percent

指定此view宽度与父布局宽度的比例。

可选值:float,0表示宽度为0,1表示与父布局宽度一致。

  1. app:layout_constraintHeight_percent

指定此view高度与父布局高度的比例。

可选值:float,0表示高度为0,1表示与父布局高度一致。

  1. app:layout_constraintWidth

指定view的宽度值,默认为wrap_content,也可以设置为match_constraints或指定具体值的dimension

可选值:wrap_content | match_constraints | dimension.

  1. app:layout_constraintHeight

指定view的高度值,默认为wrap_content,也可以设置为match_constraints或指定具体值的dimension

可选值:wrap_content | match_constraints | dimension.

  1. app:layout_constraintWidth_min

指定view的最小宽度值。

可选值:dimension.

  1. app:layout_constraintHeight_min

指定view的最小高度值。

可选值:dimension.

  1. app:layout_constraintWidth_max

指定view的最大宽度值。

可选值:dimension.

  1. app:layout_constraintWidth_percent

指定view宽度相对于父布局宽度的百分比。

可选值:float,0表示宽度为0,1表示与父布局宽度一致。

  1. app:layout_constraintHeight_percent

指定view高度相对于父布局高度的百分比。

可选值:float,0表示高度为0,1表示与父布局高度一致。

  1. app:layout_constraintWidth_default

指定view的默认宽度和最终宽度之间的关系。

可选值:wrap(wrap_content)| match(match_parent).

默认值:wrap.

  1. app:layout_constraintHeight_default

指定view的默认高度和最终高度之间的关系。

可选值:wrap(wrap_content)| match(match_parent).

默认值:wrap.

  1. app:layout_constraintHorizontal_weight

指定在horizontal方向的布局中,分配额外空间的比例,用于指定多个视图之间分配额外的空间。

可选值:float.

  1. app:layout_constraintVertical_weight

指定在vertical方向的布局中,分配额外空间的比例,用于指定多个视图之间分配额外的空间。

可选值:float.

这些属性涵盖了ConstraintLayout支持的大部分属性。在使用ConstraintLayout布局时,掌握这些属性非常重要,并且要根据实际需求选取适合的属性进行布局。

;