Skip to content

[iOS] Absolutely positioned elements above header are not pressable #4245

Description

@fredericocurti

Description

Views placed in the header region render correctly on top of the header but don't receive touch events — they're visible yet completely non-interactive. A Pressable inside the header band does nothing on tap; an identical one just below the band works fine.

Probable cause: react-native-screens mounts a UIKit UINavigationBar layered above all RN content. RN can draw over the transparent bar, but UIKit's -hitTest:withEvent: returns the bar for any touch in its bounds, so the touch is consumed before reaching the RN view. zIndex and pointerEvents can't help — the bar is a native sibling above RN's reach.

Current behavior: The header blocks interactions

no.fix.mov

Expected: Taps on empty header area (not on a back/bar button) pass through to the RN views rendered behind the header.

with.fix.mov

Steps to reproduce

Position an absolutely positioned Pressable in the header area - Touch events do not register there

Snack or a link to a repository

https://github.com/fredericocurti/rn-screens-transparent-header-repro

Screens version

4.25.2

React Native version

0.85.3

Platforms

iOS

JavaScript runtime

Hermes

Workflow

Expo managed workflow

Architecture

Fabric (New Architecture)

Build type

None

Device

iOS simulator

Device model

No response

Acknowledgements

Yes

Metadata

Metadata

Assignees

Labels

platform:iosIssue related to iOS part of the libraryrepro-providedA reproduction with a snack or repo is provided

Type

No type

Fields

No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions