在布局容器搭建页面时,子元素在交叉轴上的对齐方式可是关键一环,它直接决定了页面元素分布的规整程度。咱们可以借助 alignItems 属性来统一安排子元素在交叉轴(也就是排列方向的垂直方向)上的站位,这个效果在各种尺寸的屏幕上都能保持一致哦。这里面还有个小门道,要是交叉轴是垂直方向,取值就得用 VerticalAlign 类型;要是水平方向,那就是 HorizontalAlign 类型。

另外,还有个 “个性选手”——alignSelf 属性,它能让单个子元素特立独行,按自己的想法在容器交叉轴上对齐。它的优先级超高,一旦设置了,就会把 alignItems 属性在这个子元素上的设定给覆盖掉。
下面咱们来瞧瞧在 Column 容器里,子元素在水平方向(也就是 Column 容器的交叉轴)上不同对齐方式的实际效果。

HorizontalAlign.Start:子元素在水平方向左对齐

16.图解鸿蒙之布局-HorizontalAlign_鸿蒙

在这段代码里,三个内层 Column 组件作为子元素,在父 Column 容器的水平方向上,齐刷刷地向左对齐。就好像三个小伙伴站成一排,都紧紧靠着左边,让整个布局从左侧开始显得整齐有序。

HorizontalAlign.Center:子元素在水平方向居中对齐

16.图解鸿蒙之布局-HorizontalAlign_鸿蒙_02

这里呢,同样是这三个内层 Column 组件,因为 alignItems 设置成了 HorizontalAlign.Center,它们就不再靠左靠右,而是跑到了水平方向的正中间,有一种对称又平衡的美感,让整个布局看起来更稳当。

HorizontalAlign.End:子元素在水平方向右对齐

16.图解鸿蒙之布局-HorizontalAlign_鸿蒙_03

这次,三个子元素受到 alignItems 的指挥,一股脑儿地向右对齐,紧贴着右边站定,给布局收尾带来利落又干脆的感觉,让页面右侧也规整起来。