ConstraintLayout 约束布局的几个新特性笔记整理

1.约束比(偏移比率)

使用前提:控件的四个方向都被约束

属性/栗子 参数 说明
app:layout_constraintHorizontal_bias="0.3" float 水平约束比
app:layout_constraintVertical_bias="0.3" float 竖直约束比

2.宽高比

使用前提:控件宽高指定其一0dp表示待约束(比如:w=100dp,h=0dp)

  • 1.3:2默认(省略带约束边,这里是H,表分母)表示宽:高= 3:2
  • 2.H, 3:2W, 3:2未被约束的边表示倒置

ConstraintLayout 约束布局的几个新特性笔记整理_第1张图片

属性/栗子 参数
app:layout_constraintDimensionRatio="3:2" 宽度:高度或者float

3.1.权重

使用前提:相关控件必须水平或者竖直方向上呈“链表关系”
app:layout_constraintHorizontal_weight

属性/栗子 说明
app:layout_constraintHorizontal_weight="2" 同LinearLayout效果
app:layout_constraintVertical_weight="2" 同LinearLayout效果

3.2.连锁风格

使用前提:辅助3.1的权重
layout_constraintHorizontal_chainStyle

  • 1.spread:(默认可省略),可用空间平分
  • 2.packed:元素包裹在一起。子控件的水平或垂直方向的偏置bias属性会影响包裹中元素的位置。
  • 3.spread_inside:元素展开,但链的端点不会展开

ConstraintLayout 约束布局的几个新特性笔记整理_第2张图片

属性/栗子 说明
app:layout_constraintHorizontal_chainStyle="spread" spread、packed、spread_inside
app:layout_constraintVertical_chainStyle="spread" spread、packed、spread_inside

4.辅助线

Guideline

属性/栗子 参数 说明
android:orientation="vertical" horizontal、vertical 参考线方向
app:layout_constraintGuide_begin="100dp" dimension 根据orientation距离左/上距离
app:layout_constraintGuide_end="100dp" dimension 根据orientation距离右
app:layout_constraintGuide_percent="0.6" float 相对于父元素的百分比

你可能感兴趣的:(Android)