约束布局基础

来源:互联网 发布:软件开发好学吗? 编辑:程序博客网 时间:2024/06/05 14:46

1.app:layout_editor_absoluteX=”0dp”
app:layout_editor_absoluteY=”0dp”
//用于设置控件在ConstraintLayout中并未约束的绝对位置。
2.app:layout_constraintTop_toTopOf=”@id/button3”
同理还有topToBottom
BottomToBottomOf,LeftToLeftOf等等多种。约束布局的精华所在。
约束布局内的所有控件都带有top,bottom,left,right四个约束点,
TextView,Button等还有个layout_constraintBaseline_toBaselineOf,如名字所示用于文字基线对齐。
例如:
app:layout_constraintTop_toBottomOf=”@id/button3”
app:layout_constraintLeft_toLeftOf=”parent”
app:layout_constraintRight_toRightOf=”parent”/>
即将此控件的上部与button3的底部约束在一起(也可以理解为Y值在同一水平线上),
当我们的控件button3的Y值有变动时,此控件也会因被约束而同步变动。
此控件的左与父左约束,右与父右约束,可想象为父两边在均力对你进行拉扯,所以结果是居中。
3.app:layout_constraintHorizontal_bias用于指定约束比例,同还有Vertical:
例如当Button的top和父top约束了,bottom和bottom约束了,此时居中。
app:layout_constraintHorizontal_bias此时的值为0.5。此比例值为父布局剩余空间(去掉margin,view本身大小)给约束的左右比例。
使用这两个属性的前提是必须有进行两两约束。
4,同理还有endToEndOf,endToStart,startToStart四种。注:这四种的效果在margin之前执行。
例如Button1的startToStartOf目标设置为Button2,那么他们就在x轴上是左边界对齐的。但Button再设置了Margin值,例如MarginLeft=20dp,那么就会相较于
Button2右偏16dp。这四种定位属性与约束属性区别在于只用于定位,并不能造成约束联动。
5.

0 0
原创粉丝点击