Skip to content

[iOS/Android] Keyboard covers input fields in bottom sheetsΒ #277

@mateuszurbas

Description

@mateuszurbas

Before submitting a new issue

  • I tested using the latest version of the library, as the bug might be already fixed.
  • I tested using a supported version of react native.
  • I checked for possible duplicate issues, with possible answers.

Bug summary

Current Behavior

When using a bottom sheet with fixed sizing configurations, the keyboard overlaps input fields positioned at the bottom of the sheet, making them inaccessible to users.
This occurs in two specific cases:

Fixed height bottom sheet:

  • When the bottom sheet has a fixed size (e.g., auto) and the content takes up nearly the entire screen height
  • Input fields positioned at the bottom of the sheet become hidden behind the keyboard when focused
  • User cannot see what they're typing

Scrollable bottom sheet:

  • Same issue occurs with scrollable type sheets
  • The sheet doesn't automatically adjust its position or scroll to keep the focused input visible
  • Keyboard overlays the input field instead of pushing the content up

Expected Behavior

When an input field inside the bottom sheet is focused:

  • The bottom sheet should automatically adjust its position or scroll the content
  • The focused input field should remain visible above the keyboard
  • User should be able to see their typing without manual scrolling
  • The sheet should handle keyboard appearance/dismissal gracefully on both iOS and Android

Library version

3.0.4

Environment info

Platform: iOS & Android
react-native-true-sheet version: "3.0.4",
React Native version: "0.81.5"

Steps to reproduce

  1. Create a bottom sheet with fixed or scrollable content
  2. Add multiple input fields so the last one is near the bottom of the sheet (sheet should have at least 80% of the screen)
  3. Open the bottom sheet on iOS or Android device
  4. Tap on the bottom-most input field
  5. Observe that the keyboard covers the input field

Reproducible example repository

N/A

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions