How can I configure auto-capitalization behavior in Flutter's text entry fields? How can I configure auto-capitalization behavior in Flutter's text entry fields? dart dart

How can I configure auto-capitalization behavior in Flutter's text entry fields?


Flutter has a textCapitalization property for textfields. Set this property to TextCapitalization.sentences or any of the available values eg .characters or .words Like so:

TextField(   keyboardType: TextInputType.text,   **textCapitalization: TextCapitalization.sentences,**   style: TextStyle(      fontSize: 30.0,      color: Colors.black,      fontWeight: FontWeight.bold   ),)


Here is the complete list of behaviors of TextInputAction class

textCapitalization: TextField provides options for capitalizing the text entered by the user.

  1. TextCapitalization.sentences: This is the most common type of capitalization, and the first letter of each sentence is converted to uppercase.

    TextField( textCapitalization: TextCapitalization.sentences,),
  2. TextCapitalization.characters:Capitalize all characters in the sentence.

    TextField( textCapitalization: TextCapitalization.characters,),
  3. TextCapitalization.words:Capitalize the first letter of each word.

    TextField( textCapitalization: TextCapitalization.words,),
  4. Enable or disable autocorrection for a specific TextField. Use the AutoCorrect field to set it up. This also disables input suggestions.

    TextField(
   autocorrect: false,),


Note: Only supports text keyboards, other keyboard types will ignore this configuration. Capitalization is locale-aware.


The starting-lowercase was a bug in our iOS implementation of Flutter's keyboard wrapper, which has since been fixed as of today!

I filed a bug for making this configurable (so you can disable the autocapitalize sentences behavior) here: https://github.com/flutter/flutter/issues/9363

Please don't hesitate to reach out if this does not resolve your issue.