Glitchy iOS search bar when using Section List
Nobody has claimed this yet.
Assessment
This issue has not been assessed yet.
Description
Description
Hi, I wanted to report this issue I am having regarding a glitchy iOS search bar.
Please see the video below for a demonstration of the glitch.
Similarly, you can see the search bar glitch with these images:

Whereas it should be as such:

Overview
Ideal app desired functionality: have sticky headers (located correctly), search bar (Normal behaviour) and (Non-glitchy) pull to refresh.
Here is an overview of the problem:
- To get the sticky headers to work, we have to use SafeAreaView
- By using SafeAreaView, this results in glitchy pull to refresh
- To fix the glitchy pull to refresh, we set the headerTransparent as true (To fix another trigger of glitchy refresh) and set the marginTop to be the header height. This is so that the content is pushed down accordingly, allowing for the sticky headers to "stick" in the right location (instead of up top and behind the header)
- This results in a glitch with the search input, in that it doesn't expand and collapse correctly
- I believe the reason why the search input now doesn't behave correctly is due to the margin top.
About the search bar glitch, normal behaviour consists of "locking" in and out of view depending on if most of the search bar is show. When you pull to refresh (repository linked below), it initially shows the full search bar. However, it does not keep this behaviour when we scroll down then back up.
Refresh glitch replication
To demonstrate the glitchy pull to refresh, you can set the headerTransparent property to false within the useLayoutEffect hook in the App.tsx file. And if that is enabled then you can comment out the marginTop in the first View component as that is pushing the content the same as the headerHeight (for when it is transparent).
E.g.
headerTransparent: true, // set to false here to demonstrate glitchy activity indicator/pull to refresh.
And
marginTop: headerHeight, // Comment out if headerTransparent is false. I.e testing out glitchy refresh control.
Can you let me know if I'm doing anything wrong or advice with this issue?
Thanks!
Steps to reproduce
git clone https://github.com/KenanBouvier/ExampleRNScreenIssue
cd ExampleRNScreenIssue
npm install
cd ios
pod install
npm start
(Open iOS simulator)
Snack or a link to a repository
https://github.com/KenanBouvier/ExampleRNScreenIssue
Screens version
^3.20.0
React Native version
0.71.3
Platforms
iOS
JavaScript runtime
Hermes
Workflow
React Native (without Expo)
Architecture
Paper (Old Architecture)
Build type
Debug mode
Device
iOS simulator
Device model
iPhone 14 - iOS 16.1
Acknowledgements
Yes
- Dominant language
- TypeScript
- Stars
- 3.7k
- Forks
- 714
- Avg merge
- 2d 23h
- Merged PRs (30d)
- 71
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from software-mansion/react-native-screens
-
missing-repro platform:ios
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
software-mansion/react-native-screens#4168 · 10 comments · 2 reactions ·
-
area:stack-v4 platform:android
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
software-mansion/react-native-screens#3784 · 5 comments ·
-
cr:missing-info cr:missing-repro cr:platform:android missing-info missing-repro platform:android
Difficulty 4/5 3-5 days Newbie friendliness 42/100
software-mansion/react-native-screens#4677 · 4 comments ·
-
cr:missing-repro cr:platform:ios missing-repro platform:ios
software-mansion/react-native-screens#4671 · 3 comments · 1 assignee ·
-
cr:missing-info cr:missing-repro cr:platform:android missing-info missing-repro platform:android
software-mansion/react-native-screens#4664 · 3 comments · 1 assignee ·
All issues in software-mansion/react-native-screens
Similar issues
-
clawsweeper:fix-shape-clear clawsweeper:queueable-fix clawsweeper:source-repro impact:ux-friction issue-rating: 🦞 diamond lobster no-stale P3
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
-
community first-timers-only good first issue hacktoberfest help wanted low hanging fruit up-for-grabs
Difficulty 1/5 Under an hour Newbie friendliness 76/100
-
code-quality refactoring
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
github/gh-aw-firewall#8816 ·
-
integration:quickjs org:external priority:backlog topic:code-interpreter topic:middleware type:feature
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
langchain-ai/deepagents#6450 ·
-
Difficulty 1/5 Under an hour Newbie friendliness 88/100
vercel/react-tweet#225 ·