Všechny komponenty

MotionSheet

Spodní nebo horní sheet či boční zásuvka se zarážkami, švihnutím a předáním posouvání.

WebReact NativePřekryvy

Vyzkoušejte

Příprava příkladu…

Nejkratší použití

Filters.jsx
<MotionSheet open={open} onOpenChange={setOpen} detents={[0.45, 0.92]}>
  <FilterList />
</MotionSheet>;

Co za vás vyřeší

  • Sleduje tažení, za největší zarážkou klade odpor a usadí se podle rychlosti puštění; švihnutí posune o jednu zarážku nebo zavře.
  • Dotyková tažení se předávají posouvatelnému obsahu: tah dolů nejprve posune obsah zpět nahoru, teprve pak se pohne sheet.
  • Zarážky jako zlomky obrazovky, pixely nebo 'content' pro přirozenou velikost obsahu.
  • Modální sheet drží fokus uvnitř, učiní stránku neaktivní a zavře se klávesou Escape nebo pozadím.

Použijte pro

  • Panel filtrů.
  • Nabídka sdílení.
  • Navigační zásuvka s side="start".

Props

PropTypVýchozíPopis
openbooleanfalseZda je sheet zobrazený.
onOpenChange(open) => voidSpustí se s false, když se sheet zavře tažením, klepnutím nebo klávesou Escape.
detents(number | 'content')[]['content']Klidové velikosti: zlomek obrazovky, pixely nebo 'content'.
detentnumberŘízený index zarážky.
defaultDetentnumber0Index zarážky při otevření bez detent.
onDetentChange(index) => voidSpustí se s indexem zarážky, na které sheet dosedne.
side'bottom' | 'top' | 'start' | 'end''bottom'Okraj, ze kterého sheet přichází.
modalbooleantruePřidá pozadí, drží fokus uvnitř a učiní stránku neaktivní.
dismissiblebooleantrueZavře ho tažení za nejmenší zarážku, pozadí i Escape.
backdropClassNamestringTřída pro pozadí; backdropStyle nastaví jeho inline styl.
transitionTransitionspringKřivka timing { duration, easing } nebo pružina { tempo: 'spring', spring }. Pružiny si při přerušení zachovávají hybnost.

Ostatní props jdou do renderovaného prvku, takže className, style a obsluhy událostí fungují jako obvykle.

Web a React Native

Na webu je modální sheet nativní dialog; panel je flex sloupec, který stylujete přes className.

V React Native se renderuje v průhledném Modal a zavře ho tlačítko zpět. Vnitřní ScrollView si zachovávají vlastní gesta, takže se sheet táhne za úchyt, záhlaví a další pevné oblasti.

Použito v těchto příkladech

Hledat

Pište a hledejte v dokumentaci.