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

Tendances (20)

Étude et réalisation d’une application de contrôle d’un PC à distance en JAVA...
Étude et réalisation d’une application de contrôle d’un PC à distance en JAVA...Étude et réalisation d’une application de contrôle d’un PC à distance en JAVA...
Étude et réalisation d’une application de contrôle d’un PC à distance en JAVA...
 
Support POO Java première partie
Support POO Java première partieSupport POO Java première partie
Support POO Java première partie
 
Support de cours Spring M.youssfi
Support de cours Spring  M.youssfiSupport de cours Spring  M.youssfi
Support de cours Spring M.youssfi
 
Support Java Avancé Troisième Partie
Support Java Avancé Troisième PartieSupport Java Avancé Troisième Partie
Support Java Avancé Troisième Partie
 
eServices-Chp5: Microservices et API Management
eServices-Chp5: Microservices et API ManagementeServices-Chp5: Microservices et API Management
eServices-Chp5: Microservices et API Management
 
Support POO Java Deuxième Partie
Support POO Java Deuxième PartieSupport POO Java Deuxième Partie
Support POO Java Deuxième Partie
 
Android-Tp1: éléments graphiques de base et intents
Android-Tp1: éléments graphiques de base et intentsAndroid-Tp1: éléments graphiques de base et intents
Android-Tp1: éléments graphiques de base et intents
 
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
 
Application de gestion des projets en J2EE (Spring-Hibernate) avec architectu...
Application de gestion des projets en J2EE (Spring-Hibernate) avec architectu...Application de gestion des projets en J2EE (Spring-Hibernate) avec architectu...
Application de gestion des projets en J2EE (Spring-Hibernate) avec architectu...
 
Site JEE de ECommerce Basé sur Spring IOC MVC Security JPA Hibernate
Site JEE de ECommerce  Basé sur Spring IOC MVC Security JPA HibernateSite JEE de ECommerce  Basé sur Spring IOC MVC Security JPA Hibernate
Site JEE de ECommerce Basé sur Spring IOC MVC Security JPA Hibernate
 
Développement d'un site web jee de e commerce basé sur spring (m.youssfi)
Développement d'un site web jee de e commerce basé sur spring (m.youssfi)Développement d'un site web jee de e commerce basé sur spring (m.youssfi)
Développement d'un site web jee de e commerce basé sur spring (m.youssfi)
 
Android-Tp4: stockage
Android-Tp4: stockageAndroid-Tp4: stockage
Android-Tp4: stockage
 
Chapitre 5 classes abstraites et interfaces
Chapitre 5  classes abstraites et interfacesChapitre 5  classes abstraites et interfaces
Chapitre 5 classes abstraites et interfaces
 
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
 
Mohamed youssfi support architectures logicielles distribuées basées sue les ...
Mohamed youssfi support architectures logicielles distribuées basées sue les ...Mohamed youssfi support architectures logicielles distribuées basées sue les ...
Mohamed youssfi support architectures logicielles distribuées basées sue les ...
 
Support de cours technologie et application m.youssfi
Support de cours technologie et application m.youssfiSupport de cours technologie et application m.youssfi
Support de cours technologie et application m.youssfi
 
Etude d'une application de gestion d'une bibliothèque numérique
Etude d'une application de gestion d'une bibliothèque numérique Etude d'une application de gestion d'une bibliothèque numérique
Etude d'une application de gestion d'une bibliothèque numérique
 
Cours design pattern m youssfi partie 5 adapter
Cours design pattern m youssfi partie 5 adapterCours design pattern m youssfi partie 5 adapter
Cours design pattern m youssfi partie 5 adapter
 
Cours design pattern m youssfi partie 8 stat, template method, command , medi...
Cours design pattern m youssfi partie 8 stat, template method, command , medi...Cours design pattern m youssfi partie 8 stat, template method, command , medi...
Cours design pattern m youssfi partie 8 stat, template method, command , medi...
 
Cours design pattern m youssfi partie 2 observer
Cours design pattern m youssfi partie 2 observerCours design pattern m youssfi partie 2 observer
Cours design pattern m youssfi partie 2 observer
 

Similaire à Applications Android - cours 11 : Boites de dialogue

1bis_ProcessusUnifie.pdf
1bis_ProcessusUnifie.pdf1bis_ProcessusUnifie.pdf
1bis_ProcessusUnifie.pdf
WafaNeji1
 
Windows Phone Workshop: Globalization
Windows Phone Workshop: GlobalizationWindows Phone Workshop: Globalization
Windows Phone Workshop: Globalization
Zayen Chagra
 
Initiation à UML: Partie 1
Initiation à UML: Partie 1Initiation à UML: Partie 1
Initiation à UML: Partie 1
DIALLO Boubacar
 

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 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
 
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
 
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
 
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
 
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
 
Initiation à UML: Partie 1
Initiation à UML: Partie 1Initiation à UML: Partie 1
Initiation à UML: Partie 1
 
Sauvegarder et restaurer l'état des applications mobiles
Sauvegarder et restaurer l'état des applications mobilesSauvegarder et restaurer l'état des applications mobiles
Sauvegarder et restaurer l'état des applications mobiles
 
Production logicielle, outils et pratiques
Production logicielle, outils et pratiquesProduction logicielle, outils et pratiques
Production logicielle, outils et pratiques
 

Dernier

Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptxCopie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
ikospam0
 
Bilan énergétique des chambres froides.pdf
Bilan énergétique des chambres froides.pdfBilan énergétique des chambres froides.pdf
Bilan énergétique des chambres froides.pdf
AmgdoulHatim
 
Cours Préparation à l’ISO 27001 version 2022.pdf
Cours Préparation à l’ISO 27001 version 2022.pdfCours Préparation à l’ISO 27001 version 2022.pdf
Cours Préparation à l’ISO 27001 version 2022.pdf
ssuserc72852
 

Dernier (20)

Intégration des TICE dans l'enseignement de la Physique-Chimie.pptx
Intégration des TICE dans l'enseignement de la Physique-Chimie.pptxIntégration des TICE dans l'enseignement de la Physique-Chimie.pptx
Intégration des TICE dans l'enseignement de la Physique-Chimie.pptx
 
Conférence Sommet de la formation 2024 : Développer des compétences pour la m...
Conférence Sommet de la formation 2024 : Développer des compétences pour la m...Conférence Sommet de la formation 2024 : Développer des compétences pour la m...
Conférence Sommet de la formation 2024 : Développer des compétences pour la m...
 
Chapitre 2 du cours de JavaScript. Bon Cours
Chapitre 2 du cours de JavaScript. Bon CoursChapitre 2 du cours de JavaScript. Bon Cours
Chapitre 2 du cours de JavaScript. Bon Cours
 
Les roches magmatique géodynamique interne.pptx
Les roches magmatique géodynamique interne.pptxLes roches magmatique géodynamique interne.pptx
Les roches magmatique géodynamique interne.pptx
 
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptxCopie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
 
L'expression du but : fiche et exercices niveau C1 FLE
L'expression du but : fiche et exercices  niveau C1 FLEL'expression du but : fiche et exercices  niveau C1 FLE
L'expression du but : fiche et exercices niveau C1 FLE
 
La mondialisation avantages et inconvénients
La mondialisation avantages et inconvénientsLa mondialisation avantages et inconvénients
La mondialisation avantages et inconvénients
 
les_infections_a_streptocoques.pptkioljhk
les_infections_a_streptocoques.pptkioljhkles_infections_a_streptocoques.pptkioljhk
les_infections_a_streptocoques.pptkioljhk
 
Apolonia, Apolonia.pptx Film documentaire
Apolonia, Apolonia.pptx         Film documentaireApolonia, Apolonia.pptx         Film documentaire
Apolonia, Apolonia.pptx Film documentaire
 
L application de la physique classique dans le golf.pptx
L application de la physique classique dans le golf.pptxL application de la physique classique dans le golf.pptx
L application de la physique classique dans le golf.pptx
 
Bilan énergétique des chambres froides.pdf
Bilan énergétique des chambres froides.pdfBilan énergétique des chambres froides.pdf
Bilan énergétique des chambres froides.pdf
 
Formation échiquéenne jwhyCHESS, parallèle avec la planification de projet
Formation échiquéenne jwhyCHESS, parallèle avec la planification de projetFormation échiquéenne jwhyCHESS, parallèle avec la planification de projet
Formation échiquéenne jwhyCHESS, parallèle avec la planification de projet
 
Formation qhse - GIASE saqit_105135.pptx
Formation qhse - GIASE saqit_105135.pptxFormation qhse - GIASE saqit_105135.pptx
Formation qhse - GIASE saqit_105135.pptx
 
Sidonie au Japon . pptx Un film français
Sidonie    au   Japon  .  pptx  Un film françaisSidonie    au   Japon  .  pptx  Un film français
Sidonie au Japon . pptx Un film français
 
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...
 
Computer Parts in French - Les parties de l'ordinateur.pptx
Computer Parts in French - Les parties de l'ordinateur.pptxComputer Parts in French - Les parties de l'ordinateur.pptx
Computer Parts in French - Les parties de l'ordinateur.pptx
 
La nouvelle femme . pptx Film français
La   nouvelle   femme  . pptx  Film françaisLa   nouvelle   femme  . pptx  Film français
La nouvelle femme . pptx Film français
 
Cours Préparation à l’ISO 27001 version 2022.pdf
Cours Préparation à l’ISO 27001 version 2022.pdfCours Préparation à l’ISO 27001 version 2022.pdf
Cours Préparation à l’ISO 27001 version 2022.pdf
 
Cours ofppt du Trade-Marketing-Présentation.pdf
Cours ofppt du Trade-Marketing-Présentation.pdfCours ofppt du Trade-Marketing-Présentation.pdf
Cours ofppt du Trade-Marketing-Présentation.pdf
 
CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...
CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...
CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...
 

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.