原文:
ConstraintLayout tricks & tips Centring
作者:
Mark Allison
中心点对齐
在 Android 设计布局中,我们常常遇到需要根据父组件、相邻组件甚至是相邻组件的边来进行中心点对齐。本文将讲解如何使用
ConstraintLayout
来满足这些中心点对齐的需求。
相对父组件进行居中对齐
在这个例子中,我们设置 View 的
start
边到父组件的
start
边,同时设置了
end
边到父组件的
end
边。
在 XML 设置相对父组件居中
<TextView |
相对邻组件的中心点居中
这种中心点居中跟相对父组件的中心点居中差不多,唯一的区别就是设置的约束是向相邻组件而不是向父组件,如下图操作:
在 XML 中设置对邻组件居中
在 XML 源码中也是一样,非常相似,唯一不同就是约束指向邻组件的
android:id
而不是
parent
:
<TextView |
相对邻组件的某一边中心点居中
最后要讲解的这个中心点居中,在其他布局中非常不好实现,对于此 Material Design 指南中已经提到了
如何让浮动按钮对齐到某个组件的边缘
,通过 ConstraintLayout 可以轻松实现这个效果。假如,我们需要设置垂直向的居中到某一边,那么就设置 View 的
top
和
bottom
边的锚点约束到邻组件的那条边的同一边的中心锚点上,如下图所示:
在 XML 中设置对邻组件某边居中
<TextView |