我对crossAxisAlignment和mainAxisAlignment感到困惑。有人能用简单的话解释一下吗?
crossAxisAlignment
mainAxisAlignment
knsnq2tg1#
对于行:
mainAxisAlignment =水平轴crossAxisAlignment =垂直轴
对于列:
mainAxisAlignment =垂直轴crossAxisAlignment =水平轴
图像来源
oiopk7p52#
这两张图清楚地显示了主轴对准和交叉轴对准的含义。
(图片均来自网络)
aiazj4mn3#
Row/Column与轴相关联:
Row
Column
mainAxisAlignment是项目在该轴上的对齐方式。crossAxisAlignment是项目在另一个轴上的对齐方式。
vjhs03f74#
当你使用Row时,它的子元素是水平排列在一行中的。所以Row的主轴是水平的。在Row中使用mainAxisAlignment可以水平对齐行的子元素Row的主轴的横轴是垂直的。所以在Row中使用crossAxisAlignment可以定义它的子级如何垂直对齐。在Column中,情况正好相反。列的子列是垂直排列的,从上到下(默认情况下)。因此它的主轴是垂直的。这意味着,在Column中使用mainAxisAlignment会垂直对齐它的子列(例如顶部、底部),而crossAxisAlignment定义了子列在该列中的水平对齐方式。
ejk8hzay5#
取决于您希望如何将内容放在屏幕上。我们需要使用mainAxis和CrossAxis对齐属性。有关更基本的布局概念:https://flutter.dev/docs/codelabs/layout-basics
i86rm4rw6#
在列、
在行中,
xghobddn7#
在行中,主轴对齐水平运行,横轴对齐垂直运行。在列中,主轴对齐垂直运行,横轴对齐水平运行。
7条答案
按热度按时间knsnq2tg1#
对于行:
mainAxisAlignment
=水平轴crossAxisAlignment
=垂直轴对于列:
mainAxisAlignment
=垂直轴crossAxisAlignment
=水平轴图像来源
oiopk7p52#
这两张图清楚地显示了主轴对准和交叉轴对准的含义。
(图片均来自网络)
aiazj4mn3#
Row
/Column
与轴相关联:Row
水平Column
垂直mainAxisAlignment
是项目在该轴上的对齐方式。crossAxisAlignment
是项目在另一个轴上的对齐方式。vjhs03f74#
当你使用
Row
时,它的子元素是水平排列在一行中的。所以Row
的主轴是水平的。在Row
中使用mainAxisAlignment
可以水平对齐行的子元素Row
的主轴的横轴是垂直的。所以在Row
中使用crossAxisAlignment
可以定义它的子级如何垂直对齐。在
Column
中,情况正好相反。列的子列是垂直排列的,从上到下(默认情况下)。因此它的主轴是垂直的。这意味着,在Column
中使用mainAxisAlignment
会垂直对齐它的子列(例如顶部、底部),而crossAxisAlignment
定义了子列在该列中的水平对齐方式。ejk8hzay5#
取决于您希望如何将内容放在屏幕上。我们需要使用mainAxis和CrossAxis对齐属性。
有关更基本的布局概念:https://flutter.dev/docs/codelabs/layout-basics
i86rm4rw6#
在列、
在行中,
xghobddn7#
在行中,主轴对齐水平运行,横轴对齐垂直运行。在列中,主轴对齐垂直运行,横轴对齐水平运行。