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
<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
highlightClassNamesegítségével. - Az elemek az
items-ből, a key-ek agetKey-ből, a címkék arenderItem-ből jönnek. - A
hovermiatt 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
| Prop | Típus | Alapérték | Leírás |
|---|---|---|---|
items | readonly T[] | —kötelező | Az Ön adattömbje. |
value | key | null | —kötelező | A kiemelt elem key-e; a null elrejti a kiemelést. |
onValueChange | (key, item) => void | Elem megnyomásakor a key-jel és az elemmel fut le. | |
getKey | (item) => string | number | item.id | Egyedi, 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 }) => ReactNode | item.label | Megrajzol egy elemet; megkapja, hogy ki van-e jelölve. |
hover | boolean | false | Követi a mutatót az elemek felett, és kilépéskor visszatér a value értékhez (web). |
itemAs | element | 'button' | Az egyes listaelemek eleme. |
itemClassName | string | Osztály minden listaelemhez; az itemStyle az inline stílusát állítja be. | |
highlightClassName | string | Osztály a kiemeléshez; a highlightStyle az inline stílusát állítja be. | |
transition | Transition | spring | Timing-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
- Beérkezett üzenetekSzűrőfülek élő számokkal, elcsúsztatható sorok és a rést bezáró lista.
MotionHighlightMotionListMotionSwipeMotionNumber - FotófolyamLapozzon a fotók között, ugorjon a bélyegképekkel, nyisson meg bármelyik fotót teljes képernyőn, és húzza fel a részleteit.
MotionPagerMotionHighlightMotionZoomMotionSheet