0
votes

Comment obtenir des données de texte en flutter

J'ai un champ de texte qui a un contrôleur afin que je puisse attraper des données de celui-ci.
Mais comment puis-je le faire lorsque je crée une entrée par un bouton Cliquez, par exemple, j'ai créé 10 champs de texte comment puis-je obtenir des données d'eux?

Merci pour vos réponses mais vous ne me avez pas compris, je ne peux pas simplement créer des contrôleurs manuellement, j'ai un bouton une fois que j'ai cliqué sur un nouveau champ de texte est créé, je peux cliquer dessus autant de fois que je le veux Peut être 100 fois par exemple, à cause de cela, je dois le faire de manière programmatique si cela est possible.

merci


0 commentaires

3 Réponses :


0
votes

in sur la méthode pressée:

(){
    //this will get the last input that user entered in the textfield
   String data = _myController.text;

    if(data.isEmpty) 
      //do something 
      }


0 commentaires

0
votes
final controllerOne= TextEditingController();
final controllerTwo= TextEditingController();


TextFiledOne(
controller: controllerOne,
....
);

TextFiledTwo(
controller: controllerTwo,
....
);


onPressed(){
 String dataOne = controllerOne.text;
 String dataTwo = controllerTwo.text;
....
}

0 commentaires

1
votes

EDIT: strong> Lignes ajoutés sur l'accès au texte à l'intérieur de chaque contrôleur

Vous pouvez essayer de garder une liste code> de de TextEditControls p >

Lorsque vous appuyez sur le bouton, vous ajouterez un nouveau TextEditController code> à la liste code>, puis créez le nouveau Textfield code> que le contrôleur sera connecté à. p>

puis pour obtenir le contenu de chaque contrôleur, il suffit d'itérer via la liste code> et accédez au texte code> membre code> du contrôleur. P>

N'oubliez pas que vous devrez passer à travers cette liste code> dans votre Disposer code> de votre widget et appelez leur Disposer code> Méthodes. P >

final List<TextEditingController> _controllers = []

void onButtonPress() {
  TextEditingController newController = TextEditingController()
  _controllers.push(newController)
  // Make new TextField and use the new controller in it
  // Then figure out how to add the new TextField to your state (probably using setState)
}


1 commentaires

Je pense que vous vouliez dire .Ajouter () pas .Push ()