Bonjour à tous,
Je vous soumets un problème avec lequel je m’arrache les cheveux depuis plus d’une semaine.
J’ai créé une petite application web en Flutter web mais j’ai un problème avec mon écran de login.
J’arrive a remplir les champs des deux TextFormFields (email et mot de passe), mais lorsque je clique en dehors de ces champs, le texte disparait. Évidemment, il disparait quand je veux cliquer sur mon bouton « Connexion ».
En fait, les champs sont réinitialisés quand le clavier disparait. J’ai travaillé avec les contrôleurs, les focusNode… mais rien ne fonctionne (Même ChatGPT a séché !).
Cependant, quelques écrans plus loin, j’ai un autre formulaire qui fonctionne sans problème.
La différence entre les deux me direz-vous ? Dans la partie affichage et son Viewmodel, je n’en vois pas. La seule piste que j’entrevois, c’est dans le NavigationDelegate. En effet, le viewmodel est créé en même temps que l’écran pour le login. Et quand le clavier disparait, j’ai l’impression que tout l’écran est redessiné (avec des valeurs nulles évidemment)
Pour l’autre écran qui fonctionne, le Viewmodel est créé dans une fonction du navigationDelegate, ce qui a pour conséquence de faire apparaitre cet écran…
Enfin voilà… si quelqu’un a déjà été confronté au problème et a une solution, je suis preneur.
Bien à vous,
Benoit
PS: Petite précision, en mode application tout fonctionne. C’est juste en mode web que ça ne fonctionne pas ?!?