SlideShare une entreprise Scribd logo
1  sur  18
Télécharger pour lire hors ligne
Université Constantine 2
Dr. CHAOUCHE A.-C.
Faculté des nouvelles technologies
ahmed.chaouche@univ-constantine2.dz
– Cours 11 –
Chapitre 7 : Vues à adaptateurs et boites de dialogue (2/2)
Boites de dialogue
Développement d’applications mobiles
2018/2019. Semestre 1
Université Constantine 2
Etudiants concernés
Faculté/Institut Département Niveau Spécialité
2018/2019. Semestre 1
Dr. CHAOUCHE A.-C.
Faculté des nouvelles technologies
ahmed.chaouche@univ-constantine2.dz
Développement d’applications mobiles
Licence 3 Technologies de l’information (TI)Nouvelles technologies IFA
Licence 3 Science de l’informatique (SCI)Nouvelles technologies IFA
– Cours 11 –
Chapitre 7 : Vues à adaptateurs et boites de dialogue (2/2)
Boites de dialogue
Université Constantine 2 3
Prérequis
Gestion des vues et des layouts
Gestion des évènements
Objectifs du cours
Afficher des boites de dialogue de type Alerte
Créer et afficher des boites de dialogue personnalisées
Résumé
© Dr. Chaouche A.-C.
Université Constantine 2 4
Boites de dialogue
© Dr. Chaouche A.-C.
Université Constantine 2 5
Fenêtre modale qui possède des boutons pour interagir avec l'utilisateur
Les boites de dialogues héritent de la classe android.app.Dialog
Android fournit des boites de dialogues prédéfinies :
AlertDialog : alerte
ProgressDialog : information sur un traitement en cours
DatePickerDialog : choix d'une date
TimePickerDialog : choix d'une heure
... extends Dialog : personnalisée
Boites de dialogue (Dialog)
© Dr. Chaouche A.-C.
Université Constantine 2 6
La classe interne Builder permet de
simplifier la construction de la boite de dialogue
De nombreuses méthode permettent d'ajouter un message, un titre, une
liste d'items, etc.
L'affichage de la boite de dialogue est effectué avec show()
La boite de dialogue est fermée avec dismiss() et cancel()
AlertDialog (1/2)
© Dr. Chaouche A.-C.
Université Constantine 2 7
AlertDialog (2/2)
© Dr. Chaouche A.-C.
/java/MainActivity.java
...
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle("Exit Application?");
builder.setMessage("Click yes to exit!");
builder.setPositiveButton("Yes", new DialogInterface.OnClickListener(){
public void onClick(DialogInterface dialog, int id) { ... }
});
builder.setNegativeButton("No", new DialogInterface.OnClickListener(){
public void onClick(DialogInterface dialog, int id) { ... }
});
AlertDialog dialog = builder.create();
dialog.show();
...
Université Constantine 2 8
AlertDialog avec choix
© Dr. Chaouche A.-C.
/java/MainActivity.java
...
String[] list = {"Warrior", "Archer", "Wizard"};
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle("Choose your class");
builder.setItems(list, new DialogInterface.OnClickListener(){
@Override
public void onClick(DialogInterface dialog, int position) {
Log.i("Dialog", "Position = " + position);
}
});
AlertDialog dialog = builder.create();
dialog.show();
...
Université Constantine 2 9
ProgressDialog
© Dr. Chaouche A.-C.
/java/MainActivity.java
...
ProgressDialog dialog = new ProgressDialog(this); // Depricated
dialog.setCancelable(true);
dialog.setIndeterminate(true);
dialog.setTitle("Please Wait...");
dialog.setMessage("Preparing to download...");
dialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);
dialog.show();
...
Université Constantine 2 10
Dialog personnalisés
1. Créer une boite de dialogue
© Dr. Chaouche A.-C.
/java/CustomDialog.java
public class CustomDialog extends Dialog {
public CustomDialog(Context context){ super(context); ... }
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.dialog_custom);
...
}
}
/res/layout/dialog_custom.xml
<LinearLayout xmlns:android="http://schemas.android...
android:layout_width="match_parent"
android:layout_height="match_parent">
...
</LinearLayout>
Université Constantine 2 11
Dialog personnalisés
2. Lancer et fermer la boite de dialogue
© Dr. Chaouche A.-C.
/java/MainActivity.java
...
CustomDialog dialog = new CustomDialog(MainActivity.this);
dialog.show();
...
dialog.dismiss();
Université Constantine 2 12
En cliquant sur chaque élément du GridView, afficher la
boite de dialogue SyllabusDialog
Création d’un Dialog personnalisé SyllabusDialog
Des TextView pour afficher les informations concernant
le module
Un Button pour afficher le contenu du module
TP3c : Affichage du détail d’un module
© Dr. Chaouche A.-C.
Université Constantine 2 13
1. Dans l’éditeur Java > Mettre un point d'arrêt (breakpoint)
2. Débuguer l'application en cliquant sur
3. Après l’executionde l'application> cliquer sur
un élément
Débogage sous Android Studio (1/2)
Etapes
© Dr. Chaouche A.-C.
Université Constantine 2 14
4. Dans le code source > L'application est arrêtée dans le point d'arrêt
5. Dans Android Studio > une fenètre "Debug" apparaît
Débogage sous Android Studio (2/2)
Etapes
© Dr. Chaouche A.-C.
Université Constantine 2 15
Documents sont accessibles :
Plateforme e-learning de l’université Constantine 2
Lien : http://elearning.univ-constantine2.dz/
Rendus du TP 3 :
Avant le Mardi 14 décembre à 23h59
À : ac.chaouche@misc-umc.org
Nom du fichier à rendre :
DAM_TP3_G%_NOMBINOME1_NOMBINOME2.zip
(Ex : DAM_TP3_G1_CHAOUCHE_NECIBI.zip)
Le fichier zip doit contenir seulement le dossier src
Documents et Rendus
© Dr. Chaouche A.-C.
Université Constantine 2 16
Chapitre 8 : Persistance de données sous Android
Objectifs :
Connaître les sources de données possibles sous Android
Mettre en œuvre l’API Helper pour exploiter une BD SQLite
Persister des données dans une BD SQLite
Prochain chapitre
© Dr. Chaouche A.-C.
Université Constantine 2 17
ProgressDialog avancé :
http://www.oodlestechnologies.com/blogs/Custom-Progressbar-and-ProgressDialog
Boite de dialogue personnalisée :
http://www.codexpedia.com/android/android-custom-dialog-example/
Débogage sous Android studio :
https://www.learnhowtoprogram.com/android/user-interface-basics-637d41b1-35dc-
400a-bcc3-65794760474d/debugging-breakpoints-and-the-android-debugger
Quelques liens utiles
© Dr. Chaouche A.-C.
Université Constantine 2 18
Android Developer, «Dialogs,». Lien : https://developer.android.com/
guide/topics/ui/dialogs.html.
Android Developer, «References - Android Plateform API 26 : AlertDialog,». Lien :
developer.android.com/reference/android/app/AlertDialog.html.
Android Developer, «References - Android Plateform API 26 : ProgressDialog,».
Lien : https://developer.android.com/reference/
android/app/ProgressDialog.html.
Android Developer, «References - Android Plateform API 26 : DatePickerDialog,».
Lien : https://developer.android.com/reference/
android/app/DatePickerDialog.html.
Android Developer, «References - Android Plateform API 26 : TimePickerDialog,».
Lien : https://developer.android.com/reference/
android/app/TimePickerDialog.html.
Android Developer, «Debug Your App,». Lien : developer.android.com/
studio/debug/index.html.
Références
© Dr. Chaouche A.-C.

Contenu connexe

Tendances

Architecture jee principe de inversion de controle et injection des dependances
Architecture jee principe de inversion de controle et injection des dependancesArchitecture jee principe de inversion de controle et injection des dependances
Architecture jee principe de inversion de controle et injection des dependancesENSET, Université Hassan II Casablanca
 
Applications Android - cours 3 : Android Studio (Outil de développement)
Applications Android - cours 3 : Android Studio (Outil de développement)Applications Android - cours 3 : Android Studio (Outil de développement)
Applications Android - cours 3 : Android Studio (Outil de développement)Ahmed-Chawki Chaouche
 
PFE :: Application de gestion des dus d'enseignement
PFE :: Application de gestion des dus d'enseignementPFE :: Application de gestion des dus d'enseignement
PFE :: Application de gestion des dus d'enseignementNassim Bahri
 
Applications Android - cours 8 : Gestion des évènements
Applications Android - cours 8 : Gestion des évènementsApplications Android - cours 8 : Gestion des évènements
Applications Android - cours 8 : Gestion des évènementsAhmed-Chawki Chaouche
 
Conception et Réalisation d’une application de Gestion SCOLAIRE
Conception et Réalisation d’une application de Gestion SCOLAIREConception et Réalisation d’une application de Gestion SCOLAIRE
Conception et Réalisation d’une application de Gestion SCOLAIREGhizlane ALOZADE
 
BigData_TP1: Initiation à Hadoop et Map-Reduce
BigData_TP1: Initiation à Hadoop et Map-ReduceBigData_TP1: Initiation à Hadoop et Map-Reduce
BigData_TP1: Initiation à Hadoop et Map-ReduceLilia Sfaxi
 
Android-Tp3: fragments et menus
Android-Tp3: fragments et menusAndroid-Tp3: fragments et menus
Android-Tp3: fragments et menusLilia Sfaxi
 
Ma présentation PFE : Application Android & Site Web
Ma présentation PFE : Application Android & Site WebMa présentation PFE : Application Android & Site Web
Ma présentation PFE : Application Android & Site WebHarrathi Mohamed
 
Créer des applications Java avec MongoDB
Créer des applications Java avec MongoDBCréer des applications Java avec MongoDB
Créer des applications Java avec MongoDBMongoDB
 
Java entreprise edition et industrialisation du génie logiciel par m.youssfi
Java entreprise edition et industrialisation du génie logiciel par m.youssfiJava entreprise edition et industrialisation du génie logiciel par m.youssfi
Java entreprise edition et industrialisation du génie logiciel par m.youssfiENSET, Université Hassan II Casablanca
 
Chp1 - Introduction au Développement Mobile
Chp1 - Introduction au Développement MobileChp1 - Introduction au Développement Mobile
Chp1 - Introduction au Développement MobileLilia Sfaxi
 
Applications Android - cours 7 : Ressources et adaptation au matériel
Applications Android - cours 7 : Ressources et adaptation au matérielApplications Android - cours 7 : Ressources et adaptation au matériel
Applications Android - cours 7 : Ressources et adaptation au matérielAhmed-Chawki Chaouche
 
eServices-Tp1: Web Services
eServices-Tp1: Web ServiceseServices-Tp1: Web Services
eServices-Tp1: Web ServicesLilia Sfaxi
 
Gestion des Chercheurs d’Emploi
Gestion des Chercheurs d’EmploiGestion des Chercheurs d’Emploi
Gestion des Chercheurs d’EmploiAzzeddine Elouadi
 

Tendances (20)

Architecture jee principe de inversion de controle et injection des dependances
Architecture jee principe de inversion de controle et injection des dependancesArchitecture jee principe de inversion de controle et injection des dependances
Architecture jee principe de inversion de controle et injection des dependances
 
Support Java Avancé Troisième Partie
Support Java Avancé Troisième PartieSupport Java Avancé Troisième Partie
Support Java Avancé Troisième Partie
 
Applications Android - cours 3 : Android Studio (Outil de développement)
Applications Android - cours 3 : Android Studio (Outil de développement)Applications Android - cours 3 : Android Studio (Outil de développement)
Applications Android - cours 3 : Android Studio (Outil de développement)
 
Support JEE Servlet Jsp MVC M.Youssfi
Support JEE Servlet Jsp MVC M.YoussfiSupport JEE Servlet Jsp MVC M.Youssfi
Support JEE Servlet Jsp MVC M.Youssfi
 
Sécurité des Applications Web avec Json Web Token (JWT)
Sécurité des Applications Web avec Json Web Token (JWT)Sécurité des Applications Web avec Json Web Token (JWT)
Sécurité des Applications Web avec Json Web Token (JWT)
 
Support NodeJS avec TypeScript Express MongoDB
Support NodeJS avec TypeScript Express MongoDBSupport NodeJS avec TypeScript Express MongoDB
Support NodeJS avec TypeScript Express MongoDB
 
PFE :: Application de gestion des dus d'enseignement
PFE :: Application de gestion des dus d'enseignementPFE :: Application de gestion des dus d'enseignement
PFE :: Application de gestion des dus d'enseignement
 
Applications Android - cours 8 : Gestion des évènements
Applications Android - cours 8 : Gestion des évènementsApplications Android - cours 8 : Gestion des évènements
Applications Android - cours 8 : Gestion des évènements
 
Conception et Réalisation d’une application de Gestion SCOLAIRE
Conception et Réalisation d’une application de Gestion SCOLAIREConception et Réalisation d’une application de Gestion SCOLAIRE
Conception et Réalisation d’une application de Gestion SCOLAIRE
 
BigData_TP1: Initiation à Hadoop et Map-Reduce
BigData_TP1: Initiation à Hadoop et Map-ReduceBigData_TP1: Initiation à Hadoop et Map-Reduce
BigData_TP1: Initiation à Hadoop et Map-Reduce
 
Android-Tp3: fragments et menus
Android-Tp3: fragments et menusAndroid-Tp3: fragments et menus
Android-Tp3: fragments et menus
 
Support JEE Spring Inversion de Controle IOC et Spring MVC
Support JEE Spring Inversion de Controle IOC et Spring MVCSupport JEE Spring Inversion de Controle IOC et Spring MVC
Support JEE Spring Inversion de Controle IOC et Spring MVC
 
Ma présentation PFE : Application Android & Site Web
Ma présentation PFE : Application Android & Site WebMa présentation PFE : Application Android & Site Web
Ma présentation PFE : Application Android & Site Web
 
Créer des applications Java avec MongoDB
Créer des applications Java avec MongoDBCréer des applications Java avec MongoDB
Créer des applications Java avec MongoDB
 
Java entreprise edition et industrialisation du génie logiciel par m.youssfi
Java entreprise edition et industrialisation du génie logiciel par m.youssfiJava entreprise edition et industrialisation du génie logiciel par m.youssfi
Java entreprise edition et industrialisation du génie logiciel par m.youssfi
 
Chp1 - Introduction au Développement Mobile
Chp1 - Introduction au Développement MobileChp1 - Introduction au Développement Mobile
Chp1 - Introduction au Développement Mobile
 
Applications Android - cours 7 : Ressources et adaptation au matériel
Applications Android - cours 7 : Ressources et adaptation au matérielApplications Android - cours 7 : Ressources et adaptation au matériel
Applications Android - cours 7 : Ressources et adaptation au matériel
 
eServices-Tp1: Web Services
eServices-Tp1: Web ServiceseServices-Tp1: Web Services
eServices-Tp1: Web Services
 
Maven et industrialisation du logiciel
Maven et industrialisation du logicielMaven et industrialisation du logiciel
Maven et industrialisation du logiciel
 
Gestion des Chercheurs d’Emploi
Gestion des Chercheurs d’EmploiGestion des Chercheurs d’Emploi
Gestion des Chercheurs d’Emploi
 

Similaire à Applications Android - cours 11 : Boites de dialogue

Applications Android - cours 9 : Intents et transfert des données
Applications Android - cours 9 : Intents et transfert des donnéesApplications Android - cours 9 : Intents et transfert des données
Applications Android - cours 9 : Intents et transfert des donnéesAhmed-Chawki Chaouche
 
Applications Android - Cours 2 : OS mobiles
Applications Android - Cours 2 : OS mobilesApplications Android - Cours 2 : OS mobiles
Applications Android - Cours 2 : OS mobilesAhmed-Chawki Chaouche
 
Applications Android - cours 6 : Structure d’un projet Android
Applications Android - cours 6 :  Structure d’un projet AndroidApplications Android - cours 6 :  Structure d’un projet Android
Applications Android - cours 6 : Structure d’un projet AndroidAhmed-Chawki Chaouche
 
Applications Android - cours 10 : Vues à adaptateur
Applications Android - cours 10 : Vues à adaptateurApplications Android - cours 10 : Vues à adaptateur
Applications Android - cours 10 : Vues à adaptateurAhmed-Chawki Chaouche
 
Applications Android - cours 4 : Langage Java
Applications Android - cours 4 : Langage JavaApplications Android - cours 4 : Langage Java
Applications Android - cours 4 : Langage JavaAhmed-Chawki Chaouche
 
Applications Android - cours 12 : Persistance de données SQLite
Applications Android - cours 12 : Persistance de données SQLiteApplications Android - cours 12 : Persistance de données SQLite
Applications Android - cours 12 : Persistance de données SQLiteAhmed-Chawki Chaouche
 
PAUG 03/05/2016 : Rechercher et analyser les fuites mémoires dans une applica...
PAUG 03/05/2016 : Rechercher et analyser les fuites mémoires dans une applica...PAUG 03/05/2016 : Rechercher et analyser les fuites mémoires dans une applica...
PAUG 03/05/2016 : Rechercher et analyser les fuites mémoires dans une applica...Ludovic ROLAND
 
Outils de construction pour la recherche
Outils de construction pour la rechercheOutils de construction pour la recherche
Outils de construction pour la rechercheJohan Moreau
 
Cours design pattern m youssfi partie 1 introduction et pattern strategy
Cours design pattern m youssfi partie 1 introduction et pattern strategyCours design pattern m youssfi partie 1 introduction et pattern strategy
Cours design pattern m youssfi partie 1 introduction et pattern strategyENSET, Université Hassan II Casablanca
 
Applications Android - cours 13 : Connectivité et services Web
Applications Android - cours 13 : Connectivité et services WebApplications Android - cours 13 : Connectivité et services Web
Applications Android - cours 13 : Connectivité et services WebAhmed-Chawki Chaouche
 
1bis_ProcessusUnifie.pdf
1bis_ProcessusUnifie.pdf1bis_ProcessusUnifie.pdf
1bis_ProcessusUnifie.pdfWafaNeji1
 
Projet carrière chelsea comeau
Projet carrière  chelsea comeauProjet carrière  chelsea comeau
Projet carrière chelsea comeaucomeauchelsea
 
Chapitre 1 - Introcution & cycles de développement - Etudiant.pptx
Chapitre 1 - Introcution & cycles de développement - Etudiant.pptxChapitre 1 - Introcution & cycles de développement - Etudiant.pptx
Chapitre 1 - Introcution & cycles de développement - Etudiant.pptxssuserec8501
 
Windows Phone Workshop: Globalization
Windows Phone Workshop: GlobalizationWindows Phone Workshop: Globalization
Windows Phone Workshop: GlobalizationZayen Chagra
 
PE - Développeur d'applications multiplateformes-24 Juin-Final.pdf
PE - Développeur d'applications multiplateformes-24 Juin-Final.pdfPE - Développeur d'applications multiplateformes-24 Juin-Final.pdf
PE - Développeur d'applications multiplateformes-24 Juin-Final.pdfBinocheMf
 

Similaire à Applications Android - cours 11 : Boites de dialogue (20)

Applications Android - cours 9 : Intents et transfert des données
Applications Android - cours 9 : Intents et transfert des donnéesApplications Android - cours 9 : Intents et transfert des données
Applications Android - cours 9 : Intents et transfert des données
 
Applications Android - Cours 2 : OS mobiles
Applications Android - Cours 2 : OS mobilesApplications Android - Cours 2 : OS mobiles
Applications Android - Cours 2 : OS mobiles
 
Applications Android - cours 6 : Structure d’un projet Android
Applications Android - cours 6 :  Structure d’un projet AndroidApplications Android - cours 6 :  Structure d’un projet Android
Applications Android - cours 6 : Structure d’un projet Android
 
Applications Android (Planning)
Applications Android (Planning)Applications Android (Planning)
Applications Android (Planning)
 
Applications Android - cours 10 : Vues à adaptateur
Applications Android - cours 10 : Vues à adaptateurApplications Android - cours 10 : Vues à adaptateur
Applications Android - cours 10 : Vues à adaptateur
 
Applications Android - cours 4 : Langage Java
Applications Android - cours 4 : Langage JavaApplications Android - cours 4 : Langage Java
Applications Android - cours 4 : Langage Java
 
Applications Android - cours 12 : Persistance de données SQLite
Applications Android - cours 12 : Persistance de données SQLiteApplications Android - cours 12 : Persistance de données SQLite
Applications Android - cours 12 : Persistance de données SQLite
 
PAUG 03/05/2016 : Rechercher et analyser les fuites mémoires dans une applica...
PAUG 03/05/2016 : Rechercher et analyser les fuites mémoires dans une applica...PAUG 03/05/2016 : Rechercher et analyser les fuites mémoires dans une applica...
PAUG 03/05/2016 : Rechercher et analyser les fuites mémoires dans une applica...
 
Outils de construction pour la recherche
Outils de construction pour la rechercheOutils de construction pour la recherche
Outils de construction pour la recherche
 
Cours design pattern m youssfi partie 1 introduction et pattern strategy
Cours design pattern m youssfi partie 1 introduction et pattern strategyCours design pattern m youssfi partie 1 introduction et pattern strategy
Cours design pattern m youssfi partie 1 introduction et pattern strategy
 
Applications Android - cours 13 : Connectivité et services Web
Applications Android - cours 13 : Connectivité et services WebApplications Android - cours 13 : Connectivité et services Web
Applications Android - cours 13 : Connectivité et services Web
 
Fascicule tp programmation c
Fascicule tp programmation cFascicule tp programmation c
Fascicule tp programmation c
 
1bis_ProcessusUnifie.pdf
1bis_ProcessusUnifie.pdf1bis_ProcessusUnifie.pdf
1bis_ProcessusUnifie.pdf
 
cahier des charges
cahier des chargescahier des charges
cahier des charges
 
Projet carrière chelsea comeau
Projet carrière  chelsea comeauProjet carrière  chelsea comeau
Projet carrière chelsea comeau
 
Chapitre 1 - Introcution & cycles de développement - Etudiant.pptx
Chapitre 1 - Introcution & cycles de développement - Etudiant.pptxChapitre 1 - Introcution & cycles de développement - Etudiant.pptx
Chapitre 1 - Introcution & cycles de développement - Etudiant.pptx
 
Windows Phone Workshop: Globalization
Windows Phone Workshop: GlobalizationWindows Phone Workshop: Globalization
Windows Phone Workshop: Globalization
 
Support POO Java Deuxième Partie
Support POO Java Deuxième PartieSupport POO Java Deuxième Partie
Support POO Java Deuxième Partie
 
Sandbox technology
Sandbox technologySandbox technology
Sandbox technology
 
PE - Développeur d'applications multiplateformes-24 Juin-Final.pdf
PE - Développeur d'applications multiplateformes-24 Juin-Final.pdfPE - Développeur d'applications multiplateformes-24 Juin-Final.pdf
PE - Développeur d'applications multiplateformes-24 Juin-Final.pdf
 

Dernier

Annie Ernaux Extérieurs. pptx. Exposition basée sur un livre .
Annie   Ernaux  Extérieurs. pptx. Exposition basée sur un livre .Annie   Ernaux  Extérieurs. pptx. Exposition basée sur un livre .
Annie Ernaux Extérieurs. pptx. Exposition basée sur un livre .Txaruka
 
Le Lean sur une ligne de production : Formation et mise en application directe
Le Lean sur une ligne de production : Formation et mise en application directeLe Lean sur une ligne de production : Formation et mise en application directe
Le Lean sur une ligne de production : Formation et mise en application directeXL Groupe
 
systeme expert_systeme expert_systeme expert
systeme expert_systeme expert_systeme expertsysteme expert_systeme expert_systeme expert
systeme expert_systeme expert_systeme expertChristianMbip
 
BONNES PRATIQUES DE FABRICATION RESUME SIMPLIFIE
BONNES PRATIQUES DE FABRICATION RESUME SIMPLIFIEBONNES PRATIQUES DE FABRICATION RESUME SIMPLIFIE
BONNES PRATIQUES DE FABRICATION RESUME SIMPLIFIEgharebikram98
 
Evaluation du systeme d'Education. Marocpptx
Evaluation du systeme d'Education. MarocpptxEvaluation du systeme d'Education. Marocpptx
Evaluation du systeme d'Education. MarocpptxAsmaa105193
 
Fondation Louis Vuitton. pptx
Fondation      Louis      Vuitton.   pptxFondation      Louis      Vuitton.   pptx
Fondation Louis Vuitton. pptxTxaruka
 
A3iFormations, organisme de formations certifié qualiopi.
A3iFormations, organisme de formations certifié qualiopi.A3iFormations, organisme de formations certifié qualiopi.
A3iFormations, organisme de formations certifié qualiopi.Franck Apolis
 
Présentation_ Didactique 1_SVT (S4) complet.pptx
Présentation_ Didactique 1_SVT (S4) complet.pptxPrésentation_ Didactique 1_SVT (S4) complet.pptx
Présentation_ Didactique 1_SVT (S4) complet.pptxrababouerdighi
 
Formation M2i - Comprendre les neurosciences pour développer son leadership
Formation M2i - Comprendre les neurosciences pour développer son leadershipFormation M2i - Comprendre les neurosciences pour développer son leadership
Formation M2i - Comprendre les neurosciences pour développer son leadershipM2i Formation
 
Cours SE Le système Linux : La ligne de commande bash - IG IPSET
Cours SE Le système Linux : La ligne de commande bash - IG IPSETCours SE Le système Linux : La ligne de commande bash - IG IPSET
Cours SE Le système Linux : La ligne de commande bash - IG IPSETMedBechir
 
Saint Georges, martyr, et la lègend du dragon.pptx
Saint Georges, martyr, et la lègend du dragon.pptxSaint Georges, martyr, et la lègend du dragon.pptx
Saint Georges, martyr, et la lègend du dragon.pptxMartin M Flynn
 
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptxSAID MASHATE
 
Cours SE Gestion des périphériques - IG IPSET
Cours SE Gestion des périphériques - IG IPSETCours SE Gestion des périphériques - IG IPSET
Cours SE Gestion des périphériques - IG IPSETMedBechir
 

Dernier (14)

Annie Ernaux Extérieurs. pptx. Exposition basée sur un livre .
Annie   Ernaux  Extérieurs. pptx. Exposition basée sur un livre .Annie   Ernaux  Extérieurs. pptx. Exposition basée sur un livre .
Annie Ernaux Extérieurs. pptx. Exposition basée sur un livre .
 
Le Lean sur une ligne de production : Formation et mise en application directe
Le Lean sur une ligne de production : Formation et mise en application directeLe Lean sur une ligne de production : Formation et mise en application directe
Le Lean sur une ligne de production : Formation et mise en application directe
 
systeme expert_systeme expert_systeme expert
systeme expert_systeme expert_systeme expertsysteme expert_systeme expert_systeme expert
systeme expert_systeme expert_systeme expert
 
BONNES PRATIQUES DE FABRICATION RESUME SIMPLIFIE
BONNES PRATIQUES DE FABRICATION RESUME SIMPLIFIEBONNES PRATIQUES DE FABRICATION RESUME SIMPLIFIE
BONNES PRATIQUES DE FABRICATION RESUME SIMPLIFIE
 
Evaluation du systeme d'Education. Marocpptx
Evaluation du systeme d'Education. MarocpptxEvaluation du systeme d'Education. Marocpptx
Evaluation du systeme d'Education. Marocpptx
 
Fondation Louis Vuitton. pptx
Fondation      Louis      Vuitton.   pptxFondation      Louis      Vuitton.   pptx
Fondation Louis Vuitton. pptx
 
Pâques de Sainte Marie-Euphrasie Pelletier
Pâques de Sainte Marie-Euphrasie PelletierPâques de Sainte Marie-Euphrasie Pelletier
Pâques de Sainte Marie-Euphrasie Pelletier
 
A3iFormations, organisme de formations certifié qualiopi.
A3iFormations, organisme de formations certifié qualiopi.A3iFormations, organisme de formations certifié qualiopi.
A3iFormations, organisme de formations certifié qualiopi.
 
Présentation_ Didactique 1_SVT (S4) complet.pptx
Présentation_ Didactique 1_SVT (S4) complet.pptxPrésentation_ Didactique 1_SVT (S4) complet.pptx
Présentation_ Didactique 1_SVT (S4) complet.pptx
 
Formation M2i - Comprendre les neurosciences pour développer son leadership
Formation M2i - Comprendre les neurosciences pour développer son leadershipFormation M2i - Comprendre les neurosciences pour développer son leadership
Formation M2i - Comprendre les neurosciences pour développer son leadership
 
Cours SE Le système Linux : La ligne de commande bash - IG IPSET
Cours SE Le système Linux : La ligne de commande bash - IG IPSETCours SE Le système Linux : La ligne de commande bash - IG IPSET
Cours SE Le système Linux : La ligne de commande bash - IG IPSET
 
Saint Georges, martyr, et la lègend du dragon.pptx
Saint Georges, martyr, et la lègend du dragon.pptxSaint Georges, martyr, et la lègend du dragon.pptx
Saint Georges, martyr, et la lègend du dragon.pptx
 
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
 
Cours SE Gestion des périphériques - IG IPSET
Cours SE Gestion des périphériques - IG IPSETCours SE Gestion des périphériques - IG IPSET
Cours SE Gestion des périphériques - IG IPSET
 

Applications Android - cours 11 : Boites de dialogue

  • 1. Université Constantine 2 Dr. CHAOUCHE A.-C. Faculté des nouvelles technologies ahmed.chaouche@univ-constantine2.dz – Cours 11 – Chapitre 7 : Vues à adaptateurs et boites de dialogue (2/2) Boites de dialogue Développement d’applications mobiles 2018/2019. Semestre 1
  • 2. Université Constantine 2 Etudiants concernés Faculté/Institut Département Niveau Spécialité 2018/2019. Semestre 1 Dr. CHAOUCHE A.-C. Faculté des nouvelles technologies ahmed.chaouche@univ-constantine2.dz Développement d’applications mobiles Licence 3 Technologies de l’information (TI)Nouvelles technologies IFA Licence 3 Science de l’informatique (SCI)Nouvelles technologies IFA – Cours 11 – Chapitre 7 : Vues à adaptateurs et boites de dialogue (2/2) Boites de dialogue
  • 3. Université Constantine 2 3 Prérequis Gestion des vues et des layouts Gestion des évènements Objectifs du cours Afficher des boites de dialogue de type Alerte Créer et afficher des boites de dialogue personnalisées Résumé © Dr. Chaouche A.-C.
  • 4. Université Constantine 2 4 Boites de dialogue © Dr. Chaouche A.-C.
  • 5. Université Constantine 2 5 Fenêtre modale qui possède des boutons pour interagir avec l'utilisateur Les boites de dialogues héritent de la classe android.app.Dialog Android fournit des boites de dialogues prédéfinies : AlertDialog : alerte ProgressDialog : information sur un traitement en cours DatePickerDialog : choix d'une date TimePickerDialog : choix d'une heure ... extends Dialog : personnalisée Boites de dialogue (Dialog) © Dr. Chaouche A.-C.
  • 6. Université Constantine 2 6 La classe interne Builder permet de simplifier la construction de la boite de dialogue De nombreuses méthode permettent d'ajouter un message, un titre, une liste d'items, etc. L'affichage de la boite de dialogue est effectué avec show() La boite de dialogue est fermée avec dismiss() et cancel() AlertDialog (1/2) © Dr. Chaouche A.-C.
  • 7. Université Constantine 2 7 AlertDialog (2/2) © Dr. Chaouche A.-C. /java/MainActivity.java ... AlertDialog.Builder builder = new AlertDialog.Builder(this); builder.setTitle("Exit Application?"); builder.setMessage("Click yes to exit!"); builder.setPositiveButton("Yes", new DialogInterface.OnClickListener(){ public void onClick(DialogInterface dialog, int id) { ... } }); builder.setNegativeButton("No", new DialogInterface.OnClickListener(){ public void onClick(DialogInterface dialog, int id) { ... } }); AlertDialog dialog = builder.create(); dialog.show(); ...
  • 8. Université Constantine 2 8 AlertDialog avec choix © Dr. Chaouche A.-C. /java/MainActivity.java ... String[] list = {"Warrior", "Archer", "Wizard"}; AlertDialog.Builder builder = new AlertDialog.Builder(this); builder.setTitle("Choose your class"); builder.setItems(list, new DialogInterface.OnClickListener(){ @Override public void onClick(DialogInterface dialog, int position) { Log.i("Dialog", "Position = " + position); } }); AlertDialog dialog = builder.create(); dialog.show(); ...
  • 9. Université Constantine 2 9 ProgressDialog © Dr. Chaouche A.-C. /java/MainActivity.java ... ProgressDialog dialog = new ProgressDialog(this); // Depricated dialog.setCancelable(true); dialog.setIndeterminate(true); dialog.setTitle("Please Wait..."); dialog.setMessage("Preparing to download..."); dialog.setProgressStyle(ProgressDialog.STYLE_SPINNER); dialog.show(); ...
  • 10. Université Constantine 2 10 Dialog personnalisés 1. Créer une boite de dialogue © Dr. Chaouche A.-C. /java/CustomDialog.java public class CustomDialog extends Dialog { public CustomDialog(Context context){ super(context); ... } @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.dialog_custom); ... } } /res/layout/dialog_custom.xml <LinearLayout xmlns:android="http://schemas.android... android:layout_width="match_parent" android:layout_height="match_parent"> ... </LinearLayout>
  • 11. Université Constantine 2 11 Dialog personnalisés 2. Lancer et fermer la boite de dialogue © Dr. Chaouche A.-C. /java/MainActivity.java ... CustomDialog dialog = new CustomDialog(MainActivity.this); dialog.show(); ... dialog.dismiss();
  • 12. Université Constantine 2 12 En cliquant sur chaque élément du GridView, afficher la boite de dialogue SyllabusDialog Création d’un Dialog personnalisé SyllabusDialog Des TextView pour afficher les informations concernant le module Un Button pour afficher le contenu du module TP3c : Affichage du détail d’un module © Dr. Chaouche A.-C.
  • 13. Université Constantine 2 13 1. Dans l’éditeur Java > Mettre un point d'arrêt (breakpoint) 2. Débuguer l'application en cliquant sur 3. Après l’executionde l'application> cliquer sur un élément Débogage sous Android Studio (1/2) Etapes © Dr. Chaouche A.-C.
  • 14. Université Constantine 2 14 4. Dans le code source > L'application est arrêtée dans le point d'arrêt 5. Dans Android Studio > une fenètre "Debug" apparaît Débogage sous Android Studio (2/2) Etapes © Dr. Chaouche A.-C.
  • 15. Université Constantine 2 15 Documents sont accessibles : Plateforme e-learning de l’université Constantine 2 Lien : http://elearning.univ-constantine2.dz/ Rendus du TP 3 : Avant le Mardi 14 décembre à 23h59 À : ac.chaouche@misc-umc.org Nom du fichier à rendre : DAM_TP3_G%_NOMBINOME1_NOMBINOME2.zip (Ex : DAM_TP3_G1_CHAOUCHE_NECIBI.zip) Le fichier zip doit contenir seulement le dossier src Documents et Rendus © Dr. Chaouche A.-C.
  • 16. Université Constantine 2 16 Chapitre 8 : Persistance de données sous Android Objectifs : Connaître les sources de données possibles sous Android Mettre en œuvre l’API Helper pour exploiter une BD SQLite Persister des données dans une BD SQLite Prochain chapitre © Dr. Chaouche A.-C.
  • 17. Université Constantine 2 17 ProgressDialog avancé : http://www.oodlestechnologies.com/blogs/Custom-Progressbar-and-ProgressDialog Boite de dialogue personnalisée : http://www.codexpedia.com/android/android-custom-dialog-example/ Débogage sous Android studio : https://www.learnhowtoprogram.com/android/user-interface-basics-637d41b1-35dc- 400a-bcc3-65794760474d/debugging-breakpoints-and-the-android-debugger Quelques liens utiles © Dr. Chaouche A.-C.
  • 18. Université Constantine 2 18 Android Developer, «Dialogs,». Lien : https://developer.android.com/ guide/topics/ui/dialogs.html. Android Developer, «References - Android Plateform API 26 : AlertDialog,». Lien : developer.android.com/reference/android/app/AlertDialog.html. Android Developer, «References - Android Plateform API 26 : ProgressDialog,». Lien : https://developer.android.com/reference/ android/app/ProgressDialog.html. Android Developer, «References - Android Plateform API 26 : DatePickerDialog,». Lien : https://developer.android.com/reference/ android/app/DatePickerDialog.html. Android Developer, «References - Android Plateform API 26 : TimePickerDialog,». Lien : https://developer.android.com/reference/ android/app/TimePickerDialog.html. Android Developer, «Debug Your App,». Lien : developer.android.com/ studio/debug/index.html. Références © Dr. Chaouche A.-C.