Native Text Input for Flutter

A text input widget built using the native UITextView on iOS (this package only supports iOS for now).


Follow the instructions from

Why you should use this

Many iOS users are used to the subtle features provided by the native UITextView throughout iOS. Even though Flutter provides a lot of useful widgets, many Flutter developers will notice that TextField or CupertinoTextField provided by Flutter are not on par with their native counterpart.

The above shows just one of the missing text editing features in Flutter's TextField, when comparing to the native UITextView. Features like these are especially important if you're building an app that involves a lot of text composition (messaging, editing document, and so on).

To address this, this package simply wraps the native UITextView as a Flutter widget.

Hope you find it useful and happy coding! 🎉🎉🎉

Plugin API

controllerTextEditingControllerControlling the text being edited (
placeholderStringPlaceholder text when text entry is empty (
textContentTypeTextContentTypeTo identify the semantic meaning expected for a text-entry area (
keyboardTypeKeyboardTypeType of keyboard to display for a given text-based view (
onChangedValueChanged<String>Called when the user initiates a change to text entry (
onSubmittedValueChanged<String>Called when the user indicates that they are done editing the text in the field (
focusNodeFocusNodeDefines the keyboard focus for this widget (
textAlignTextAlignHow the text should be aligned horizontally (
minLinesintMinimum number of lines of text input widget1
maxLinesintMaximum number of lines of text input body, 0 for no limit1

More examples

You may find more usage examples here.


This project is licensed under the MIT License.