diff --git a/ios/RNSScreen.m b/ios/RNSScreen.m index 3836d22d12..921b8c7b02 100644 --- a/ios/RNSScreen.m +++ b/ios/RNSScreen.m @@ -433,6 +433,13 @@ - (void)viewDidLayoutSubviews _lastViewFrame = self.view.frame; [((RNSScreenView *)self.viewIfLoaded) updateBounds]; } + + // Clear any coordinates that have been (inadvertently) set on RNSScreenStackHeaderConfig subviews. + // This allows the native UINavigationBar to control the position of header content. + RNSScreenStackHeaderConfig * configView = [self findScreenConfig]; + for (UIView* subview in configView.reactSubviews) { + subview.frame = CGRectMake(0, 0, subview.frame.size.width, subview.frame.size.height); + } } - (id)findFirstResponder:(UIView*)parent