La plupart des applications ont des formulaires (connexion, inscription, saisie de données) nécessitant la gestion et la validation des entrées utilisateur. Flutter fournit Form, TextFormField, des validateurs et des contrôleurs pour construire et valider les formulaires — essentiels pour toute application avec entrée utilisateur.
Formulaires et TextFormField
final _formKey = GlobalKey<FormState>(); // a key to access the form's state
Form(
key: _formKey,
child: Column(children: [
TextFormField(
decoration: InputDecoration(labelText: 'Email'),
validator: (value) { // VALIDATION logic
if (value == null || value.isEmpty) return 'Email required';
if (!value.contains('@')) return 'Invalid email';
return null; // null = valid
},
),
ElevatedButton(
onPressed: () {
if (_formKey.currentState!.validate()) { // run all validators
// all fields valid → submit
}
},
child: Text('Submit'),
),
]),
)
