/react-native-autogrow-textinput-ts

A helper component meant to be used as a drop-in replacement for RN TextInput to allow automatic expanding of a multi-line text input according to the number of lines.

Primary LanguageJavaMIT LicenseMIT

react-native-autogrow-textinput-ts

  • Note: This is the fork of eact-native-autogrow-textinput by wix. I added typings and some critical fixes to the component.

A helper component meant to be used as a drop-in replacement for RN TextInput to allow automatic expanding of a multi-line text input according to the number of lines.

Demo

Installation

Install using npm:

npm i react-native-autogrow-textinput-ts --save

Native side installation

To fix the issue with the height not being set for initial values (or with other cases where the input is not set by the user typing using the keyboard) you need to add the libAutoGrowTextInput to your project. After performing npm install, locate AutoGrowTextInput.xcodeproj in YOUR_PROJECT/node_modules/react-native-autogrow-textinput/ios and drag it to your own project, then in your target's general settings, add it to the "Linked Frameworks and Libraries".

Otherwise, just npx pod-install

How To Use

Import the new component:

import AutoGrowingTextInput from 'react-native-autogrow-textinput-ts';

Now use it as you would normally do with a ScrollView to wrap arround TextInput components:

<AutoGrowingTextInput style={styles.textInput} placeholder={'Your Message'} />

Example Project

Check out the full example project here.

In the example folder, perform npm install and then run it from the Xcode project.