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

Column

A vertical layout container for universal @expo/ui components.

Android
iOS
Web
Included in Expo Go

A vertical layout container that arranges its children from top to bottom. Delegates to SwiftUI's VStack on iOS, Jetpack Compose's Column on Android, and a flex View on web.

Three colored boxes stacked vertically inside a ColumnThree colored boxes stacked vertically inside a Column

Installation

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.

Usage

Basic column

ColumnExample.tsx
import { useColorScheme } from 'react-native'; import { Host, Column, Text } from '@expo/ui'; export default function ColumnExample() { const colorScheme = useColorScheme(); const ink = { color: colorScheme === 'dark' ? '#FFFFFF' : '#000000' }; return ( <Host matchContents> <Column spacing={8}> <Text textStyle={ink}>First</Text> <Text textStyle={ink}>Second</Text> <Text textStyle={ink}>Third</Text> </Column> </Host> ); }

Alignment

Use alignment to position children along the cross (horizontal) axis.

ColumnAlignmentExample.tsx
import { useColorScheme } from 'react-native'; import { Host, Column, Text } from '@expo/ui'; export default function ColumnAlignmentExample() { const colorScheme = useColorScheme(); const ink = { color: colorScheme === 'dark' ? '#FFFFFF' : '#000000' }; return ( <Host matchContents={{ vertical: true }} style={{ width: '100%' }}> <Column spacing={8} alignment="center"> <Text textStyle={ink}>Centered</Text> <Text textStyle={ink}>Centered</Text> </Column> </Host> ); }

API

import { Column } from '@expo/ui';

No API data file found, sorry!