Skip to content

[Bug]: Keyboard covers TextInput content in BottomSheetModal with BottomSheetScrollView on Android #2673

@ParkJongJoon7128

Description

@ParkJongJoon7128

Version

v5

Reanimated Version

v3

Gesture Handler Version

v2

Platforms

Android

What happened?

When a TextInput inside a BottomSheetModal (wrapped in BottomSheetScrollView) receives focus on Android, the keyboard appears but completely
covers the focused input field — hiding both the cursor and the typed text. The bottom sheet does not scroll or shift upward to keep the focused
TextInput visible.

Environment details:

  • @gorhom/bottom-sheet: 5.2.8
  • react-native-reanimated: 4.1.1 (v4 — the closest option above is v3, but we are on v4)
  • react-native-gesture-handler: 2.28.0
  • react-native: 0.81.5 (New Architecture enabled)
  • expo: ~54.0.30
  • Platform: Android

Configuration used:

<BottomSheetModal
  ref={bottomSheetRef}
  enableDynamicSizing
  enablePanDownToClose
  backdropComponent={renderBackdrop}
  handleComponent={null}
  enableBlurKeyboardOnGesture={true}
  keyboardBehavior="interactive"
  keyboardBlurBehavior="restore"
  android_keyboardInputMode="adjustResize"
>
  <BottomSheetScrollView>
    {/* Multiple TextInput fields */}
  </BottomSheetScrollView>
</BottomSheetModal>

Despite setting keyboardBehavior="interactive" and android_keyboardInputMode="adjustResize", the bottom sheet content does not adjust when the
keyboard opens. The keyboard simply overlaps the TextInput, making it impossible for the user to see what they are typing.

Screen_Recording_20260514-113959_Mobile.Bankruptcy.App.mp4

Reproduction steps

  1. Create a BottomSheetModal with enableDynamicSizing enabled.
  2. Place a BottomSheetScrollView inside it.
  3. Add multiple TextInput components inside the scroll view (at least 4–5 fields so some are positioned in the lower half of the sheet).
  4. Set keyboardBehavior="interactive", keyboardBlurBehavior="restore", and android_keyboardInputMode="adjustResize" on the BottomSheetModal.
  5. Open the bottom sheet on an Android device.
  6. Tap on one of the lower TextInput fields to focus it.
  7. Observe that the keyboard appears and covers the focused input — cursor and typed text are not visible.

Reproduction sample

No Expo Snack available at this time, but the reproduction can be achieved using the issue reproduction template with the configuration described in the "What happened?" section above.

Relevant log output

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workinginvalidThis doesn't seem right

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions