I am trying to conditionally render an input bar that appears above the keyboard when the user is tying. I do not want to show this input bar unless the user wants to add something. So they tap a button which is supposed to make the component visible and then focus on the input which brings up the keyboard.

This works as expected except when the user first opens the keyboard. Nothing appears. There is an empty view tag as the keyboard comes up but then it disappears and there is nothing. However, once the user starts typing it appears and after that works as expected. I have no idea why it isn’t appearing. If I don’t type anything and dismiss the keyboard you can see it briefly before it goes away as it is supposed to.

I have tried calling the function with async-await and my current syntax. Neither is working and I have been unable to solve this.

Here is a snack that recreates the issue and contains all the relevant code to reproduce the error.

<https://snack.expo.io/@dmargulies/inputaccessoryview-problem>

Thank you for your help.