Android 使用 ConstraintLayout 使多个控件水平/垂直方向对齐

由于 Android 官方文档写得不够详细,所以我发帖补充一下。

两个控件垂直对齐的效果图.png

那么问题来了,如何实现这种垂直对齐的效果呢?步骤如下:

  • 1.创建 ConstraintLayout 布局文件之后,添加两个控件,如图:
image.png
  • 2.点击 TextView 并按住顶边上的锚点,将其向上拖动,直至其贴靠到布局顶部,然后将其释放。如图:
点击 TextView 并按住顶边上的锚点.png
将 TextView 顶边的锚点 ⬆️ 拖动之后的效果.png
  • 3.点击右侧 Button 并按住左边的锚点,将其向左拖动到 TextView 的右侧锚点。如图:


    将 Button 左边的锚点 ⬅️ 拖动之后的效果图.png
  • 4.点击 TextView 然后右击,选中 Show baseline,因为 TextView 的 gravity 默认值为 top,因此其 baseline 也靠近顶部,如图:

TextView Show baseline.png
  • 5.设置 TextView 的 gravitycenter

  • 6.点击 Button 然后右击,选中 Show baseline,拖动 Button 的 baseline 连接到 TextView 的 baseline,如图:

两个控件垂直对齐的效果图1.png

目前 Button 的 layout_heightwrap_content,有点看不出两个控件垂直对齐的效果,修改 Button 的 layout_height 为 70dp,效果如图:

两个控件垂直对齐的效果图2.png

最后附上最终的代码截图:

final.png

你可能感兴趣的:(Android 使用 ConstraintLayout 使多个控件水平/垂直方向对齐)