Premièrement, désolé pour mon mauvais anglais, j'ai un écran avec quelquesFormfields de TextForm, lorsque je repousse un deuxième écran, puis cliquez sur le bouton Précédent, les champs de texte dans le premier écran sont propres. Comment résoudre ce problème? P>
3 Réponses :
Je ne peux pas connaître votre problème, mais essayez ce code simple et voyez s'il aide. Ici, tout fonctionne comme prévu!
import 'package:flutter/material.dart';
main() => runApp(MaterialApp(
home: FirstPage()
));
class FirstPage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
body: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
TextField(),
FlatButton(
color: Colors.red,
child: Text('Click me!'),
onPressed: () =>
Navigator.push(context, MaterialPageRoute(builder: (context) => SecondRoute())),
),
],
),
);
}
}
class SecondRoute extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(),
body: Text('ok'),
);
}
}
Si vous avez personnalisé votre bouton arrière, lorsque vous y retournerez, n'utilisez Navigator.Push, utilisez simplement Navigator.pop (contexte) P>
cher, p>
J'ai trouvé le problème, lorsque vous mettez le contrôleur dans mon TextFormfield, il maintient les valeurs quand de l'arrière de la deuxième écran. P>
Si vous voulez demander quelque chose ici, vous devez fournir un code reproductible ici afin que nous puissions vous aider