Cocher une case
Fait partie de la section Rendre l’application interactive du Journey Flutter de Coddy. Leçon 28 sur 34.
Une Checkbox fonctionne comme un Switch : une value: à afficher et un onChanged auquel tu réponds avec setState.
Checkbox(
value: _agreed,
onChanged: (bool? value) {
setState(() {
_agreed = value ?? false;
});
},
)Une différence : sa valeur est un bool?, un booléen ou null. Une case à cocher peut avoir un troisième état, vide, que tu n’utiliseras pas ici. Comme _agreed est un simple bool, transforme une éventuelle valeur null en false avec ??, comme tu l’as fait avec int.tryParse.
Une case à cocher est souvent ce qui permet d’appuyer sur un bouton : coche « J’accepte » et le bouton Continuer cesse d’être grisé.
Défi
Facile- Permettez de cocher et décocher la case : stockez sa valeur dans
_agreed. - Grisez
Continuejusqu’à ce que la case soit cochée.
Essayez vous-même
import 'package:flutter/material.dart';
void main() {
runApp(const MyApp());
}
class MyApp extends StatelessWidget {
const MyApp({super.key});
@override
Widget build(BuildContext context) {
return MaterialApp(
debugShowCheckedModeBanner: false,
home: const HomePage(),
);
}
}
class HomePage extends StatefulWidget {
const HomePage({super.key});
@override
State<HomePage> createState() => _HomePageState();
}
class _HomePageState extends State<HomePage> {
bool _agreed = false;
void _continue() {
ScaffoldMessenger.of(context).showSnackBar(
const SnackBar(content: Text('Welcome!')),
);
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(title: const Text('Rules')),
body: Center(
child: Column(
mainAxisSize: MainAxisSize.min,
children: [
Row(
mainAxisSize: MainAxisSize.min,
children: [
Checkbox(
value: _agreed,
onChanged: (bool? value) {},
),
const Text('I agree to the rules'),
],
),
const SizedBox(height: 16),
ElevatedButton(onPressed: _continue, child: const Text('Continue')),
],
),
),
);
}
}
Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Rendre l’application interactive
1Boutons
Votre premier boutonAfficher dans la consoleBoutons textuels et à contourBoutons avec icôneLe bouton d’action flottant7Interrupteurs et curseurs
Allumer et éteindre avec un interrupteurCocher une caseChoisir une valeur avec un curseurEntraînez-vous par vous-même : Compilateur Flutter en ligne