Reference version

This documentation is available as Markdown for AI agents and LLMs. See the full Markdown index or append .md to any documentation URL.

VStack

用于垂直布局的 SwiftUI VStack 组件。

iOS
tvOS
Included in Expo Go
Recommended version:
~58.0.1

Expo UI VStack 与官方 SwiftUI VStack API 相匹配,并垂直排列其子元素

四个带编号的彩色圆角方块在 VStack 中垂直堆叠四个带编号的彩色圆角方块在 VStack 中垂直堆叠

安装

Terminal
- npx expo install @expo/ui
- yarn expo install @expo/ui
- pnpm expo install @expo/ui
- bun expo install @expo/ui

If you are installing this in an existing React Native app, make sure to install expo in your project.

使用

基本垂直堆栈

BasicVStackExample.tsx
import { Host, VStack, Text } from '@expo/ui/swift-ui'; export default function BasicVStackExample() { // Give the host a size when the stack needs room to align its children. return ( <Host style={{ flex: 1 }}> <VStack spacing={12}> <Text>First</Text> <Text>Second</Text> <Text>Third</Text> </VStack> </Host> ); }

使用对齐方式

alignment 属性控制子元素的水平对齐方式。可用选项包括:leading、center 和 trailing

VStackAlignmentExample.tsx
import { Host, VStack, Rectangle } from '@expo/ui/swift-ui'; import { frame } from '@expo/ui/swift-ui/modifiers'; export default function VStackAlignmentExample() { return ( <Host style={{ flex: 1 }}> <VStack spacing={12} alignment="leading"> <Rectangle modifiers={[frame({ width: 50, height: 50 })]} /> <Rectangle modifiers={[frame({ width: 100, height: 50 })]} /> <Rectangle modifiers={[frame({ width: 75, height: 50 })]} /> </VStack> </Host> ); }

API

import { VStack } from '@expo/ui/swift-ui';

Component

VStack

iOS
tvOS

Type: React.Element<VStackProps>

VStackProps

alignment

iOS
tvOS
Optional • Literal type: string

The horizontal alignment of children within the stack.

Acceptable values are: 'center' | 'leading' | 'trailing'

children

iOS
tvOS
Type: ReactNode

spacing

iOS
tvOS
Optional • Type: number

The spacing between children.