Összes komponens

MotionHighlight

Fülek, szegmentált vezérlők vagy navigáció adatokból, egyetlen kiemeléssel, amely a kijelöléshez vándorol.

WebReact NativeKiválasztás és lapozás

Próbálja ki

A példa előkészítése…

A legrövidebb használat

Tabs.jsx
<MotionHighlight
  items={['Overview', 'Activity', 'Settings']}
  value={tab}
  onValueChange={setTab}
  hover
/>;

Amit Ön helyett elintéz

  • Egyetlen kiemelés mozog és méreteződik át az elemek között; stílusozza a highlightClassName segítségével.
  • Az elemek az items-ből, a key-ek a getKey-ből, a címkék a renderItem-ből jönnek.
  • A hover miatt követi a mutatót, és visszatér a kijelöléshez.
  • Az elemek több sorba is tördelődhetnek, és a kiemelés követi őket.
  • A betűtípusok betöltése és az elrendezésváltozások automatikusan újramérésre kerülnek.

Mire használja

  • Oldalfülek.
  • Szűrősáv.
  • Szegmentált vezérlő egy beállítási űrlapon.

Props

PropTípusAlapértékLeírás
itemsreadonly T[]—kötelezőAz Ön adattömbje.
valuekey | null—kötelezőA kiemelt elem key-e; a null elrejti a kiemelést.
onValueChange(key, item) => voidElem megnyomásakor a key-jel és az elemmel fut le.
getKey(item) => string | numberitem.idEgyedi, stabil key-t ad vissza egy elemhez. Alapértelmezés item.id, illetve karakterláncoknál és számoknál maga az elem.
renderItem(item, { selected, index }) => ReactNodeitem.labelMegrajzol egy elemet; megkapja, hogy ki van-e jelölve.
hoverbooleanfalseKöveti a mutatót az elemek felett, és kilépéskor visszatér a value értékhez (web).
itemAselement'button'Az egyes listaelemek eleme.
itemClassNamestringOsztály minden listaelemhez; az itemStyle az inline stílusát állítja be.
highlightClassNamestringOsztály a kiemeléshez; a highlightStyle az inline stílusát állítja be.
transitionTransitionspringTiming-görbe { duration, easing } vagy rugó { tempo: 'spring', spring }. A rugók megszakításkor megtartják a lendületüket.

A többi props a renderelt elemre kerül, így a className, a style és az eseménykezelők a szokásos módon működnek.

Web és React Native

Minden elem alapértelmezés szerint button-ként renderel (az itemAs ezt módosítja); megnyomása az onValueChange(key, item) hívást indítja.

React Native alatt az elemek Pressable-ök; a pozíció a natív driveren, a méret egy JavaScript által vezérelt beágyazott nézeten fut.

Ezekben a példákban használva

Keresés

Gépeljen a dokumentációban való kereséshez.