# Feature Request: Expose scrolling events (`onScrollStart` / `onScrollEnd`) or `onScrollingChange` for DateTimePicker
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Anfängerfreundlichkeit
- 35/100
- Issue-Typ
- Feature
- Klarheit
- Größtenteils klar
- Aktivitätsstatus
- Veraltet
- Tech-Stack
- javascript, react-native
- Bereich
- mobile
Rechercherichtung
Start by reading the DateTimePicker component and its native iOS, Android, and Windows picker implementations to see where scrolling state can be observed and exposed. The issue proposes either start/end callbacks or a boolean callback but gives no file or test names. Done means host apps can detect when the wheel is scrolling and disable actions until it settles.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Feature request
Summary
When the native wheel picker is scrolling, host UIs (e.g., a BottomSheet with action buttons) cannot detect that the wheel is still moving. This may cause users to press Confirm while the wheel is still decelerating, resulting in an incorrect or unintended selection.
I’m requesting new APIs to expose the picker’s scroll state, such as:
onScrollStart/onScrollEndcallbacks, or- a single
onScrollingChange(isScrolling: boolean)callback.
This would allow the host to temporarily disable buttons during scrolling to provide a smoother and safer UX.
Why it is needed
- Prevent accidental confirmation while the wheel is settling.
- Improve UX in modals and BottomSheets where confirm/cancel actions sit below the picker.
- Current APIs (
onChange) only fire after a value has fully settled — not while scrolling.
Proposed API
Option A — Separate callbacks
<DateTimePicker
value={value}
mode="time"
onChange={handleChange}
onScrollStart={() => setPickerScrolling(true)}
onScrollEnd={() => setPickerScrolling(false)}
/>
Option B — Single boolean callback
<DateTimePicker
value={value}
onScrollingChange={(isScrolling) => setPickerScrolling(isScrolling)}
/>
Code sample
function BottomSheet() {
const [value, setValue] = useState(new Date());
const [scrolling, setScrolling] = useState(false);
return (
<>
<DateTimePicker
mode="time"
value={value}
onChange={(event, newValue) => setValue(newValue)}
onScrollStart={() => setScrolling(true)}
onScrollEnd={() => setScrolling(false)}
/>
<View style={{ flexDirection: 'row', justifyContent: 'space-between' }}>
<Button title="Cancel" disabled={scrolling} />
<Button title="Confirm" disabled={scrolling} />
</View>
</>
);
}
- Vorherrschende Sprache
- JavaScript
- Sterne
- 2.9k
- Forks
- 459
- Ø Merge
- 4 T. 16 Std.
- Gemergte PRs (30 T.)
- 5
Entwicklungsumgebung
- Kein Dockerfile und keine Docker-Compose-Datei
- Hat eine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus react-native-datetimepicker/datetimepicker
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 76/100
-
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 58/100
react-native-datetimepicker/datetimepicker#1070 · 1 Kommentar ·
-
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 52/100
-
DateTimePickerAndroid.open() throws "Cannot read property" error on RN 0.78.3 new architectureOffen
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 55/100
react-native-datetimepicker/datetimepicker#1047 · 6 Kommentare ·
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 20/100
react-native-datetimepicker/datetimepicker#1046 · 1 Kommentar ·
Alle Issues in react-native-datetimepicker/datetimepicker
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 76/100
zilliztech/memsearch#853 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
MadiroGlobalHealth/UVL-EMR#580 ·
Maintainer antworten meist innerhalb von 1 Tag
-
[BUG] Mobile menu doesn't work on the Rabbit Behaviour pageEvtl. vergeben @Aryamuh-ynah hat das heute übernommen. Offenbug
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 88/100
Riya-Kharade/PetSathi#110 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
area:ui
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
openfootmanager/openfootmanager#1365 ·
Maintainer antworten meist innerhalb von 1 Tag
-
js needs-atl new-feature
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 65/100
GoogleChrome/modern-web-guidance-src#3496 · 2 Kommentare ·
Maintainer antworten meist innerhalb von 2 Tagen