Reference version

LazyHStack

一个用于懒加载水平布局的 SwiftUI LazyHStack 组件。

iOS
tvOS
Included in Expo Go
Bundled version:
~56.0.6

For the complete documentation index, see llms.txt. Use this file to discover all available pages.

Expo UI LazyHStack 与官方 SwiftUI LazyHStack API 保持一致,并水平排列其子元素,仅在需要时创建项目(当它们在滚动过程中变为可见时)。

安装

Terminal
npx expo install @expo/ui

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

用法

基础懒加载水平栈

LazyHStack 应在 axes="horizontal"ScrollView 内使用,以启用懒加载渲染。

BasicLazyHStackExample.tsx
import { Host, ScrollView, LazyHStack, Text } from '@expo/ui/swift-ui'; export default function BasicLazyHStackExample() { return ( <Host style={{ flex: 1 }}> <ScrollView axes="horizontal"> <LazyHStack spacing={12}> {Array.from({ length: 100 }, (_, i) => ( <Text key={i}>{`Item ${i}`}</Text> ))} </LazyHStack> </ScrollView> </Host> ); }

带对齐

alignment 属性控制子元素的垂直对齐方式。可用选项包括:topcenterbottomfirstTextBaselinelastTextBaseline

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

API

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

Component

LazyHStack

iOS
tvOS

Type: React.Element<LazyHStackProps>

LazyHStackProps

alignment

iOS
tvOS
Optional • Literal type: string

The vertical alignment of children within the stack.

Acceptable values are: 'top' | 'center' | 'bottom' | 'firstTextBaseline' | 'lastTextBaseline'

children

iOS
tvOS
Type: React.ReactNode

spacing

iOS
tvOS
Optional • Type: number

The spacing between children.