本文使用的是
Android Studio 3.0
(其他版本可能没有一些功能,或者看起来不太一样)
Constraint Layout
使用约束来确定View
在布局中的位置,约束表示对另一个View
、父布局或不可见guideline
的连接或对齐。创建约束有两种方式,一是手动创建,二是使用Android studio
工具自动连接创建。
- 开启自动连接并切换到
Designe
标签下。 - 拖拽
ImageView
到Design view
或者Blueprint view
上,直到虚线出现。 - 当看到从上到下以及从左到右的虚线的时候,释放鼠标按钮。将会看到蓝色的锯齿线,锯齿线表示约束,将
ImageView
的顶部、左侧、底部和右侧边缘连接到父视图的边缘。这时ImageView
居中显示。
约束自动添加到了ImageView
的四个方向,现在可以通过
调整ImageView
的大小。
管理约束,ImageView
的每一个方向上有个圆点,拖动到父布局的圆点或者其他View
的圆点上创建约束,约束用锯齿线表示。
现在如果想让ImageView
顶部对齐,那么可以把鼠标停留在底部的约束圆点上,直到约束线变成红色,然后单击圆点,删除底部约束线。
现在ImageView
依然是水平居中,垂直方向,顶部与父布局对齐(因为垂直方向只有一个约束到顶部)
开启自动连接之后,可以将任何元素(如按钮)拖动到布局的任何部分以生成针对父布局的约束。
向布局添加一个按钮,选择布局中的按钮,并将其拖到右下角,如上所示,直到出现边和底边距的guidelines
为止。当您在两个方向上看到guidelines
时,释放按钮,按钮自动地向guidelines
对齐。
两个约束将自动添加按钮上(相对于父布局),并且有默认的guidelines margin
值(16dp)