material-components / material-components/material-components-android
[BottomSheetBehavior] Nested scrolling child view does not scroll when its inside nested scrolling parent
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Java
- Sterne
- 17.4k
- Forks
- 3.2k
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
Description: When a nested scrolling child view is inside a nested scrolling parent view and the child view changes the scroll position, the touch events get intercepted by the bottom sheet behavior. For example, if I put a ViewPager2 in the bottom sheet dialog and put a vertically scrollable RecyclerView inside the ViewPager2, and navigate to the second page, the RecyclerView becomes unscrollable.
Expected behavior: Nested scrolling child view must be scrollable and should not be intercepted by bottom sheet behavior.
Minimal sample app repro: https://github.com/UdaraWanasinghe/bottom-sheet-nested-scrolling-test
Android API version: All affected.
Material Library version: 1.8.0
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne mit der verlinkten minimalen Beispiel-App und reproduziere das Problem mit einem ViewPager2, das ein vertikal scrollbares RecyclerView innerhalb eines Bottom Sheets enthält. Verfolge anschließend, wie BottomSheetBehavior das verschachtelte Scrollen und das Abfangen von Touch-Ereignissen behandelt; als abgeschlossen gilt die Untersuchung, wenn das RecyclerView nach der Navigation zur zweiten Seite in der betroffenen Material Library-Version weiterhin scrollbar bleibt.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- java
- Bereich
- mobile
- Issue-Typ
- Bug
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 42/100