0% ont trouvé ce document utile (0 vote)
43 vues3 pages

TP5 - Stateful Widgets

Transféré par

Dergaoui Ayoub
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
43 vues3 pages

TP5 - Stateful Widgets

Transféré par

Dergaoui Ayoub
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Université Moulay Ismail

Faculté des sciences


Master : SDIA
AU : 2024/2025

TP5 : Stateful widgets

Exercice 1 : Création d’un formulaire simple


 Objectif : Créer un formulaire Flutter avec validation des champs, et à la soumission,
afficher une boîte de dialogue (AlertDialog) pour que l'utilisateur puisse confirmer ou
annuler l'enregistrement.

 Interface attendue :

1. Un formulaire (Form) contenant les champs suivants :

 Nom complet (TextFormField) : champ obligatoire


 Email (TextFormField) : champ obligatoire et doit contenir un @
 Mot de passe (TextFormField) : champ obligatoire et au moins 6
caractères, masqué (obscureText: true)

2. Un bouton “S’inscrire” (ElevatedButton) placé sous les champs.

 Comportement attendu :

1. Lorsque l'utilisateur clique sur “S’inscrire” :

 Les champs sont validés.


 Si la validation est réussie,une boîte de dialogue (AlertDialog) s’affiche
pour confirmer ou annuler l’enregistrement.

2. La boîte de dialogue doit contenir :

 Un titre : "Confirmation de l'inscription"


 Un message : "Voulez-vous valider votre inscription ?"
 Deux boutons : "Valider" : Un message de succès est affiché (ex. via
SnackBar ). "Annuler" : Le AlertDialog se ferme sans enregistrer.

Exercice 2: Affichage d'une image avec Likes/Dislikes et Commentaires


 Objectifs : Créer une interface Flutter qui permet :

 d’afficher une image,


 de comptabiliser les likes et dislikes,
 d’afficher une liste de commentaires,
 de saisir de nouveaux commentaires via un champ texte.
 Interface principale à créer :

1. Une image affichée en haut de l’écran. (Vous pouvez utiliser une image locale ou
via une URL)
2. En dessous de l’image :

 Deux icônes cliquables : Bouton "Like 👍 " : augmente le compteur de


likes et Bouton "Dislike 👎 " : augmente le compteur de dislikes
 Chaque bouton affiche le nombre de clics à côté de l’icône.

3. Une zone d’affichage des commentaires :

 Liste verticale (ListView) des commentaires ajoutés.

4. Un champ texte + bouton "Commenter" :

 Permet à l’utilisateur d’ajouter un commentaire


 Le commentaire apparaît immédiatement dans la liste

Exercice 3 : Gestion dynamique d’une liste avec Checkbox et suppression


conditionnelle
 Objectif : Créer une application Flutter où l’utilisateur peut :

 Ajouter dynamiquement des noms dans une liste,


 Cocher les éléments,
 Supprimer un élément uniquement s’il est coché.

 Consigne :

Vous devez développer une interface permettant à l’utilisateur :

1. De saisir un nom et prénom via un TextField


2. D’ajouter cet élément à une liste dynamique affichée sous forme de ListView
3. Chaque élément de la liste contient :

 Une Checkbox (pour marquer l’élément comme sélectionné)


 Le nom complet
 Une icône de suppression (IconButton) qui supprime l’élément
seulement s’il est coché

 Comportement attendu :

1. Lorsqu’un utilisateur entre un texte et clique sur Ajouter : Le nom complet


est ajouté à la liste affichée
2. Chaque ligne de la liste contient :

 Une Checkbox pour indiquer si l’élément est sélectionné


 Un bouton de suppression : Si la Checkbox est cochée, l’élément est
supprimé, Sinon, un SnackBar indique que la sélection est requise

Exercice 4 : Application avec navigation vers plusieurs Exercices


 Objectif : Créer une application Flutter qui intègre plusieurs exercices via une
interface avec onglets ou un Drawer. L’objectif est de structurer les exercices réalisés
précédemment au sein d’une application multi-écrans, tout en pratiquant :

 La navigation
 La gestion d’état
 Les interactions utilisateur

 Structure de l’application :

1.Page d’accueil principale : Écran avec simplement le texte centré : "TP5 –


Application multi-écrans Flutter"
2. 3 Exercices intégrés accessibles via Drawer ou onglets :

 EX1 : Formulaire d’inscription avec confirmation (Valider / Annuler)


 EX2 : Image avec likes, dislikes et liste de commentaires
 EX3 : Liste dynamique avec checkbox + suppression conditionnelle

 Navigation attendue :
Option 1 : Drawer de navigation

1. Un menu latéral avec les éléments :

 Accueil (TP5)
 EX1 – Formulaire
 EX2 – Image
 EX3 – Liste

Option 2 : BottomNavigationBar ou TabBar

1. Une barre de navigation en bas ou en haut, avec 4 onglets :

 TP5
 EX1
 EX2
 EX3

Vous aimerez peut-être aussi