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.

分隔线

用于创建视觉分隔符的 Jetpack Compose 分隔线组件。

Android
Included in Expo Go
Recommended version:
~57.0.18

Expo UI 提供与官方 Jetpack Compose Divider API 匹配的 HorizontalDivider 和 VerticalDivider。

三个文本区域由水平 Material 3 分割线分隔三个文本区域由水平 Material 3 分割线分隔

安装

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.

用法

水平分隔线

一条细水平线,用于在列表和布局中直观地分隔内容。

HorizontalDividerExample.tsx
import { Host, HorizontalDivider, Column, Text, useMaterialColors, } from '@expo/ui/jetpack-compose'; export default function HorizontalDividerExample() { const colors = useMaterialColors(); return ( <Host style={{ flex: 1 }}> <Column> <Text style={{ fontSize: 28 }} color={colors.onBackground}> First section </Text> <HorizontalDivider /> <Text style={{ fontSize: 28 }} color={colors.onBackground}> Second section </Text> </Column> </Host> ); }

自定义粗细和颜色

HorizontalDivider 和 VerticalDivider 都接受 thickness 和 color 属性。使用 StyleSheet.hairlineWidth 可绘制单像素线,或设置自定义的粗细和颜色。

CustomDividerExample.tsx
import { Host, HorizontalDivider, Column, Text, useMaterialColors, } from '@expo/ui/jetpack-compose'; import { StyleSheet } from 'react-native'; export default function CustomDividerExample() { const colors = useMaterialColors(); return ( <Host style={{ flex: 1 }}> <Column> <Text style={{ fontSize: 28 }} color={colors.onBackground}> Hairline divider (1 pixel) </Text> <HorizontalDivider thickness={StyleSheet.hairlineWidth} /> <Text style={{ fontSize: 28 }} color={colors.onBackground}> Thick colored divider </Text> <HorizontalDivider thickness={4} color="#E91E63" /> <Text style={{ fontSize: 28 }} color={colors.onBackground}> Below </Text> </Column> </Host> ); }

垂直分隔线

一条垂直线,用于在横向排列的行布局中分隔并排项目。

VerticalDividerExample.tsx
import { Host, VerticalDivider, Row, Text, useMaterialColors, } from '@expo/ui/jetpack-compose'; import { height } from '@expo/ui/jetpack-compose/modifiers'; export default function VerticalDividerExample() { const colors = useMaterialColors(); return ( <Host matchContents> <Row verticalAlignment="center" horizontalArrangement={{ spacedBy: 16 }} modifiers={[height(48)]}> <Text style={{ fontSize: 28 }} color={colors.onBackground}> Left </Text> <VerticalDivider /> <Text style={{ fontSize: 28 }} color={colors.onBackground}> Right </Text> </Row> </Host> ); }

API

import { HorizontalDivider, VerticalDivider, } from '@expo/ui/jetpack-compose';

Components

HorizontalDivider

Android

Type: React.Element<ComponentType<DividerCommonConfig>>

A horizontal divider line that groups content in lists and layouts, matching Compose's HorizontalDivider.

VerticalDivider

Android

Type: React.Element<ComponentType<DividerCommonConfig>>

A vertical divider line that groups content in layouts, matching Compose's VerticalDivider.

Types

DividerCommonConfig

Android
PropertyTypeDescription
color(optional)ColorValue

Color of the divider line.

modifiers(optional)ModifierConfig[]

Modifiers for the component.

thickness(optional)number

Thickness of the divider line. Accepts dp values; use StyleSheet.hairlineWidth for a single-pixel line.