垂直布局(VStack)
在Scripting 应用程序中,VStack
组件是一个布局视图,用于垂直排列其子视图。它提供了灵活的选项,用于调整子视图的对齐方式以及控制它们之间的间距。
VStack
组件
类型声明
1declare const VStack: FunctionComponent<VStackProps>
描述
VStack
组件会将其子视图垂直排列,非常适合创建垂直堆叠的布局。您可以根据设计需求,自定义子视图的对齐方式和它们之间的间距。
属性
alignment
(可选)
- 类型:
HorizontalAlignment
- 默认值:
"center"
- 描述: 确定堆栈中子视图的水平对齐方式。对齐方式指定了垂直排列的视图如何在水平方向上相互定位。
- 可接受的值:
"leading"
:将视图向左对齐。
"center"
:将视图水平居中对齐。
"trailing"
:将视图向右对齐。
示例
1<VStack alignment="leading">
2 <Text>左对齐</Text>
3 <Text>另一个项目</Text>
4</VStack>
spacing
(可选)
- 类型:
number | undefined
- 默认值: 如果未指定,则会根据子视图自动计算。
- 描述: 设置相邻子视图之间的距离(像素)。使用
undefined
时,堆栈将自动确定最佳间距。
示例
1<VStack spacing={10}>
2 <Text>项目 1</Text>
3 <Text>项目 2</Text>
4</VStack>
children
(可选)
- 类型:
1(VirtualNode | undefined | null | (VirtualNode | undefined | null)[])[] | VirtualNode | undefined
- 描述: 堆栈中显示的子元素。您可以传递单个元素、元素数组或
undefined
/null
值。null
和 undefined
值会被忽略,从而支持动态布局。
示例
1<VStack>
2 <Text>第一个项目</Text>
3 <Image systemName="star" />
4</VStack>
HorizontalAlignment
类型
水平对齐控制了当视图在 VStack
中垂直排列时,如何在水平方向上相互定位。
类型声明
1type HorizontalAlignment = 'leading' | 'center' | 'trailing'
对齐选项
leading
:将所有子视图与堆栈的左边缘对齐。
center
:将所有子视图水平居中对齐。
trailing
:将所有子视图与堆栈的右边缘对齐。
视觉指南
以下是三种对齐选项的示例图:

使用示例
1<VStack alignment="leading" spacing={10}>
2 <Image systemName="globe" />
3 <Text>左对齐项目</Text>
4 <Text>另一个项目</Text>
5</VStack>
解释
alignment="leading"
:将所有子视图左对齐。
spacing={10}
:为每个子视图之间添加 10 像素的间距。
- 包含两个子视图:
- 一个显示系统图标的
Image
视图。
- 两个显示标签项目的
Text
视图。
最佳实践
- 使用
alignment
来控制堆叠文本和图标的水平定位,以实现更好的视觉一致性。
- 利用
spacing
创建间距合理、视觉美观的布局。
- 动态或条件性地传递子元素时,无需担心
null
或 undefined
值。
通过本指南,您可以自信地使用 VStack
组件,在Scripting 应用项目中创建清晰的垂直堆叠布局。