ConstraintLayout

约束布局ConstraintLayout是android.view.ViewGroup,它允许您灵活地定位和调整小部件大小。

不多废话直接来看如何使用。

首先打开你的Android studio,新建项目,我现在使用的android studio是3.6.1版本,布局已经默认帮你设置为ConstraintLayout。

android ConstraintLayout水平布局 安卓constraintlayout_android studio

那么开始操作,我们来新建一个登录界面:

先把默认TextView删除,接下来我们不用代码方式进行编写(现在都可视化了),直接拉拽就可以了。

android ConstraintLayout水平布局 安卓constraintlayout_拖拽_02

将输入框、密码输入框和按钮拖入布局内,直接运行的结果会是什么样的呢,不用想了肯定叠一起。

android ConstraintLayout水平布局 安卓constraintlayout_控件_03

当你点击控件时会出现四个圆圈,没错这四个圆圈就是用来拖拽进行相对位置控制的。      

android ConstraintLayout水平布局 安卓constraintlayout_android_04

当你直接将四个点拖拽绑定到ConstraintLayout上时就可以绑定位置了,可以看到右边有两个值,自然是当前控件在所绑定控件的相对比例了,0.5是表示中间位置,在此基础上如果你想向右移动一定距离,可以这样设置:

android ConstraintLayout水平布局 安卓constraintlayout_拖拽_05

可以看出此时所在的是去除左边100dp后的剩余宽度的中间位置,竖直方向也是同样的道理。

我并不喜欢直接将控件绑定到ConstraintLayout上,那要怎么弄呢,首先我先拉线,可以看到这有多种选择,我们选虚线也就是第一个和第二个,拉完线点击前面的小三角可以看到会出现三种情况:分别对应的是距离头部多少dp,距离底部多少dp,和在屏幕的百分几位置,没错我就喜欢第三个,当布局复杂的时候,你会发现这个是多么方便。

android ConstraintLayout水平布局 安卓constraintlayout_android_06

好接下来我们先拉出四条线:

android ConstraintLayout水平布局 安卓constraintlayout_控件_07

将三个控件绑定到线上,当你拉伸时候控件也会随你变化:

android ConstraintLayout水平布局 安卓constraintlayout_拖拽_08

这样出来的界面也可以很好的适配不同的屏幕:

android ConstraintLayout水平布局 安卓constraintlayout_java_09

设置完这些就可以设置id和内容了,当然就直接选择就好了:

android ConstraintLayout水平布局 安卓constraintlayout_android studio_10

最后看下运行效果:

android ConstraintLayout水平布局 安卓constraintlayout_android_11

android ConstraintLayout水平布局 安卓constraintlayout_android studio_12

ok,这就是一些简单的操作了,当你使用熟悉了你肯定会爱上这个布局,并能快速的搭建布局了。