In regular native behavior, scrolling an unfocused text view does not make it focus. In React Native however, when you have a multiline TextInput, and you try to scroll, it immediately focuses.
Looking at the source code, this seems to be by design, as the text view is wrapped in a TouchableWithoutFeedback that calls focus on press.
Any workarounds short of forking React Native?
Related
There is a way to create a component that run when KeyboardAvoidingView is running. For example, in a screen there are a TextInput (in the bottom like footer) and a Text. When I click in TextInput to edit (KeyboardAvoidingView is enable) I want the Text disappear. I know how can disappear the Text but I should find a way to detect when KeyboardAvoidingView open.
I'm using a ScrollView in my React Native App, and calling scrollToEnd({animated: true}) within a useEffect.
When its scrolling, the scroll bar temporarily appears. Is there some way to change that behavior, so that it doesn't appear, but is still there if I manually scroll?
I'm currently building an order page that takes in only selected characters for my TextInput element.
My requirement is that when I focus on TextInput, the keyboard doesn't appear but I can still point the cursor around in the TextInput.
Tried using editable={false}, works for keyboard not appearing but disables cursor.
Is there a workaround to this where I can hide my keyboard but still use cursor?
What you are trying to do is not currently posisble in React Native, see this Github thread
Currently I have a TextInput at the bottom of my screen, when I press the TextInput the keyboard is placed on top of the TextInput, so I can't see what I am typing.
Does anyone know how I would be able to show the TextInput component just above the keyboard, when the component is pressed?
There's an exact component for this, provided by React Native, KeyboardAvoidingView.
In html I can make a division or a span editable, similarly is it possible that I can make a View or any other component except Text Input editable in React Native.