-
-
Notifications
You must be signed in to change notification settings - Fork 597
feat(iOS 26, Stack v4): support for new search bar placements, integration with toolbar #3168
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
kmichalikk
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good overall.
There are glitches with some combinations, but there are present in native apps, too.
I'm worried that we didn't check out enough combinations, though. We should also see what happens when we set different styling options for header.
When I disabled headerTransparent, it broke 'automatic' too:
automatic-header-transparent-false.mov
I managed to reproduce this as well in bare UIKit app. By default, UIKit uses |
kkafar
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Few adjustments request & we're good.
1ad30f7 to
85e101a
Compare
kkafar
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looking good, thank you!
Description
This PR addresses changes to search bar on iOS 26.
Closes https://github.com/software-mansion/react-native-screens-labs/issues/339.
After merging, docs in
react-navigationshould also be updated, issue for this: https://github.com/software-mansion/react-native-screens-labs/issues/384.Changes
integrated,integratedButton,integratedCentered),allowToolbarIntegration),inlinehas been renamed tointegratedstarting from iOS 26) andcancelButtonText(search cancel button does not have any text on iOS 26),stackedplacement)SearchBar(workaround above does not solve all bugs with search bar on iOS 26).Screenshots / GIFs
Simulator.Screen.Recording.-.iPhone.16.Pro.-.2025-08-28.at.12.17.00.mov
Note
If you use
integrated,integratedButtonorintegratedCentered, the integration into toolbar is delayed and causes a flash (you can see it on the video). This bug happens also in bare UIKit app. The best workarounds I could find are:automaticwith transparent header,automaticwithhideWhenScrolling: trueDetails: https://github.com/software-mansion/react-native-screens-labs/issues/331#issuecomment-3232909939
There is also another bug (also reproducible but due to how tabs+freeze work in screens, it's a little bit worse in our case). I think it's more of an edge case though (if you use tab with search systemItem but disable toolbar integration, the search bar is empty). Details: https://github.com/software-mansion/react-native-screens-labs/issues/331#issuecomment-3233232295
Test code and steps to reproduce
Run
Test3168. You can also see other Search Bar related test screens likeSearchBar.tsx,Test758,Test1097.Checklist