callstack / callstack/react-native-pager-view

setPage prevents Keyboard on Android

Offen
#514 6 Kommentare 5 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
TypeScript
Sterne
3.4k
Forks
476
Ø Merge
10 T. 21 Std.
Gemergte PRs (30 T.)
2

Beschreibung

## Environment

"expo": "~44.0.0",
"react": "17.0.1",
"react-native": "0.64.3",
"react-native-pager-view": "5.4.9",

OS: Ubuntu 20.04
Device OS: Android 11

## Description

setPage prevents initial keyboard open on any PagerView child View except for the first and last.

In my testing, this only occurs on Android and only when the keyboard is not on screen when setPage is called. It does not occur when setPageWithoutAnimation is called or when a page is selected by gesture rather than calling setPage.

## Reproducible Demo

[Snack reproducing bug](https://snack.expo.dev/@aar2222/rn-pager-view-bug-android)

[Repo reproducing bug](https://github.com/adam-adair/rn-pager-view-bug-android)

To reproduce the bug, on an Android device:
- press buttons to navigate to second or third child Views.
- focus the TextInput. Keyboard will dismiss immediately. It can be opened with a second focus.
- The bug doesn't appear if the keyboard is on screen when the button is pressed or if the TextInput is on the first or last child View.

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Beginne mit dem verlinkten Snack oder Repository und reproduziere das Problem auf einem Android-Gerät mit setPage. Vergleiche es anschließend mit setPageWithoutAnimation und der Gesten-Navigation. Als abgeschlossen gilt dies, wenn ein TextInput in einem mittleren PagerView-Kind beim ersten Fokus nach einer programmgesteuerten Navigation die Tastatur öffnet.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
android, react-native, typescript
Bereich
mobile
Issue-Typ
Bug
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.