Skip to content

RangeSlider

RangeSlider provides a dual-thumb slider for selecting a value range. Built with React Native Gesture Handler and Reanimated for direct 1:1 gesture tracking.

Usage

RangeSliderExample.tsx
import { useState } from 'react';
import { RangeSlider } from '@masumdev/rn-ui';
export function RangeSliderExample() {
const [range, setRange] = useState<[number, number]>([200, 800]);
return (
<RangeSlider
min={0}
max={1000}
step={50}
value={range}
onValueChange={setRange}
tone="primary"
/>
);
}

Props API

PropTypeDefaultDescription
minnumber0Minimum bounds.
maxnumber100Maximum bounds.
stepnumber1Step increment for snapping.
value[number, number]Controlled range value [low, high].
defaultValue[number, number]Initial uncontrolled range.
onValueChange(values: [number, number]) => voidCallback during drag.
toneComponentTone"primary"Color tone for track and thumbs.
disabledbooleanfalseDisable interaction.
hapticFeedbackbooleantrueEnable haptic feedback on step snap.
trackHeightnumber6Track height in pixels.
thumbSizenumber24Thumb diameter in pixels.