Android ConstraintLayout(约束布局)

1、概述
约束布局ConstraintLayout,是Android Studio 2.2中主要的新增功能之一,为了实现自适配

2、引入
app build.gradle中引入

implementation'com.android.support.constraint:constraint-layout:1.1.3'

在布局文件中就可以引入ConstraintLayout使用了

android:layout_width="match_parent"
android:layout_height="match_parent">

3、相对布局属性
最基础的Constraint属性,可以设置在父控件内的位置,相对其他控件的相对位置,

layout_constraintLeft_toLeftOf //同向左对齐

layout_constraintRight_toRightOf //同向右对齐

layout_constraintTop_toTopOf //同向顶对齐

layout_constraintBottom_toBottomOf //同向底对齐

//start=left end=right

layout_constraintRight_toLeftOf //相邻,在其左边

layout_constraintLeft_toRightOf //相邻,在其右边

layout_constraintTop_toBottomOf //相邻,在其底部

layout_constraintBottom_toTopOf //相邻,在其顶部

layout_constraintBaseline_toBaselineOf //基线对齐

4、百分比属性
可以设置占父控件的百分比

layout_constrainWidth_percent

ayout_constrainHeight_percent

5、链条样式

  • spread - 元素将被展开(默认样式)

  • 加权链 - 在spread模式下,如果某些小部件设置为MATCH_CONSTRAINT,则它们将拆分可用空间

  • spread_inside - 类似,但链的端点将不会扩展

  • packed - 链的元素将被打包在一起。 孩子的水平或垂直偏差属性将影响包装元素的定位

app:layout_constraintHorizontal_chainStyle="spread"

6、倾向bias
搭配bias,能使约束偏向某一边,默认是0.5,有以下属性:

  • layout_constraintHorizontal_bias (0最左边 1最右边)

  • layout_constraintVertical_bias (0最上边 1 最底边)

利用该属性可以实现相对布局按一定百分比分布

你可能感兴趣的:(Android ConstraintLayout(约束布局))