react-native
react-native copied to clipboard
TextInput multiline is jumpy and flaky when pressing new line
Description
When you set mutline
to true
and enter/delete new lines, the scrolling is really flaky. Notice that this app was instantiated with npx react-native init myapp --template react-native-template-typescript
Android
https://user-images.githubusercontent.com/21032419/155330305-e22acaae-0e77-422b-af85-c565f0e81073.mov
iOS
https://user-images.githubusercontent.com/21032419/155330662-c1bd6d24-d02a-4c6d-a6d4-8ce2010537cf.mov
Version
0.67.2
Output of npx react-native info
info Fetching system and libraries information...
System:
OS: macOS 11.6
CPU: (8) x64 Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz
Memory: 72.38 MB / 16.00 GB
Shell: 5.8 - /bin/zsh
Binaries:
Node: 16.13.0 - ~/.nvm/versions/node/v16.13.0/bin/node
Yarn: 1.22.17 - ~/projects/samalapit/sellers/mobile-app/node_modules/.bin/yarn
npm: 8.1.0 - ~/.nvm/versions/node/v16.13.0/bin/npm
Watchman: 2021.12.06.00 - /usr/local/bin/watchman
Managers:
CocoaPods: 1.11.2 - /Users/aprilmintacpineda/.rvm/gems/ruby-3.0.2/bin/pod
SDKs:
iOS SDK:
Platforms: DriverKit 21.2, iOS 15.2, macOS 12.1, tvOS 15.2, watchOS 8.3
Android SDK: Not Found
IDEs:
Android Studio: 2020.3 AI-203.7717.56.2031.7935034
Xcode: 13.2.1/13C100 - /usr/bin/xcodebuild
Languages:
Java: 11.0.11 - /usr/bin/javac
npmPackages:
@react-native-community/cli: Not Found
react: 17.0.2 => 17.0.2
react-native: 0.67.2 => 0.67.2
react-native-macos: Not Found
npmGlobalPackages:
*react-native*: Not Found
Steps to reproduce
import { TextInput } from 'react-native';
<TextInput
style={{
borderWidth: 1,
borderColor: '#000'
}}
multiline
/>
Adding scrollEnabled={false}
will somehow fix the issue but:
- it's not viable if you need the scrolling to be enabled.
- It only fixes it for iOS, Android will still have a problem especially when delete new lines fast as seen in the video above.
Snack, code example, screenshot, or link to a repository
No response
Am I really the only one experiencing this? It's quite weird that this isn't getting any attention, because it's literally just plain text input so I would expect others to experience this.
@aprilmintacpineda I’m encountering the same thing, awaiting for a fix
@aprilmintacpineda what react native version you’re using? A fix has been merged a while back.
0.67.3
I just saw 0.67.4 but the release notes doesn't talk about anything related to ios, it talked about a text input bug related to android. I'm just about to try it.
EDIT:
I'm now on 0.67.4 it still happens
@aprilmintacpineda I’m encountering the same thing, awaiting for a fix
Thanks for confirming! That gives me hope!
@aprilmintacpineda ignore the first quote on your comment above, I confused the issues 🥴.
oh, this has been around for years. yes it's a regular text input that flickers in a very basic scenario so user can tell for sure if the app was made using RN)) the problem seems to be due to lack of space to render the string, or some like that, so I made a wrapper that measures the size of text and sets a min height (+some extra actually) for the input. Not perfect, bu now I'm using it.
@Omelyan do you mind sharing the wrapper?
Any update on that?
Same Issue here, I'm trying to make a Note writting app. This only seems to happen when the TextInput Field is not already covering the whole screen, as soon as you get into the range where you can scroll your text it stops the behaviour.
Adding scrollEnabled={false}
can solve it
Also experiencing this problem - feels like it should be prioritized as it makes long text input unusable (unless you can turn off scrolling).
Related: https://github.com/facebook/react-native/issues/16826
This issue is stale because it has been open 180 days with no activity. Remove stale label or comment or this will be closed in 7 days.
this issue is not stale as it still exists.