Lorsque je touche textField en mode landScape, je voudrais développer en plein écran aime WhatsApp
TextFormField( keyboardType: TextInputType.number, decoration: InputDecoration( prefixIcon: Padding( padding: EdgeInsets.all(0.0), child: Icon(Icons.person, size: 40.0, color: Colors.white), ), hintText: "Input your opinion", hintStyle: TextStyle(color: Colors.white30), border: OutlineInputBorder( borderRadius: BorderRadius.all(new Radius.circular(25.0))), labelStyle: TextStyle(color: Colors.white)), textAlign: TextAlign.center, style: TextStyle( color: Colors.white, fontSize: 25.0, ), controller: host, validator: (value) { if (value.isEmpty) { return "Empty value"; } }, )
4 Réponses :
Tout ce que vous avez à faire est de définir la variable maxLines
lors de la création d'un TextField
. J'ai ajouté le champ de texte dans un widget Carte afin que vous puissiez voir la superficie totale.
@override Widget build(BuildContext context) { return Scaffold( appBar: AppBar( title: Text("Simple Material App"), ), body: Column( children: <Widget>[ Card( color: Colors.grey, child: Padding( padding: EdgeInsets.all(8.0), child: TextField( maxLines: 8, decoration: InputDecoration.collapsed(hintText: "Enter your text here"), ), ) ) ], ) ); }
Merci, tu as économisé mon temps.
Pas besoin de rembourrage. Maxline fonctionne bien pour moi
Définissez maxLines sur null et keyboardType sur TextInputType.multiline comme ceci:
TextField( maxLines: null, keyboardType: TextInputType.multiline, )
Excellente solution! Comment pouvons-nous atteindre la capitalisation de phrases tout en utilisant la multiligne?
Malheureusement, il n'y a aucun moyen de flutter, vous pouvez définir la hauteur minimale d'un TextField ou TextFormField. La meilleure façon de donner à un TextField ou à un TextFormField une taille fixe est de spécifier le nombre maximal de lignes que le Field doit prendre sans s'étendre davantage. Remarque: Cela ne limite pas la quantité de texte d'entrée, cela limite uniquement le nombre de lignes affichées.
Exemple:
TextFormField( keyboardType: TextInputType.multiline, maxLines: 8, maxLength: 1000, ),
Cela limitera la taille du champ à 8 lignes, mais peut prendre jusqu'à 1000 caractères. J'espère que cela aidera quelqu'un.
L'ensemble se expands: true
Expanded( child: TextField( maxLines: null, expands: true, ), )
OU
Si vous l'utilisez dans une Column
, utilisez:
TextField( maxLines: null, expands: true, keyboardType: TextInputType.multiline, )
J'utilise ceci dans la colonne, mais le hintText s'aligne au milieu. Comment dois-je l'aligner sur le dessus?
@DheerajAvvari Je ne parviens pas à reproduire ce problème, cela fonctionne très bien. Pouvez-vous me montrer votre code (reproductible minimal)?
veuillez montrer votre code
vous pouvez essayer de définir le keyboardType: TextInputType.multiline lorsque le champ de texte est au point et que l'orientation est paysage