p2 éléments graphiques android

24
Éléments Graphiques Interface graphique de base, éléments de sélection… Formation Mobile 27 Aout au 1 Septembre 2015 Dr. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 1

Upload: lilia-sfaxi

Post on 14-Feb-2017

1.718 views

Category:

Technology


6 download

TRANSCRIPT

Page 1: P2 éléments graphiques android

Éléments Graphiques Interface graphique de base, éléments de sélection…

Formation Mobile 27 Aout au 1 Septembre 2015

Dr. L i l i a SFAXI www. l i l i asfax i .wix .com /l i l i asfax i

S l ide 1

Page 2: P2 éléments graphiques android

ÉLÉMENTS GRAPHIQUES DE BASE Éléments Graphiques Android

Dr. L i l i a SFAXI www. l i l i asfax i .wix .com /l i l i asfax i

S l ide 2

Page 3: P2 éléments graphiques android

Les Composants View et ViewGroup

•  View: •  Classe de base pour la création d’une interface graphique en

Android •  Classe mère de tous les widgets (éléments graphiques) •  Une vue peut être ajoutée à une application :

•  Soit statiquement, dans le fichier de description de l’interface (Layout XML)

•  Soit dynamiquement, dans le code Java de l’application

•  ViewGroup: •  Classe de base de tous les layouts (dispositions) •  Layouts: Conteneurs invisibles rassemblant plusieurs View ou

ViewGroup •  Permet de définir l’emplacement de ses fils dans l’écran

Dr. L i l i a SFAXI www. l i l i asfax i .wix .com /l i l i asfax i

S l ide 3

Éléments Graphiques de Base

Page 4: P2 éléments graphiques android

Layout XML

•  Ensemble de fichiers XML de spécification des différents composants graphiques d’une application (widgets) et de leurs relations entre eux et avec leurs conteneurs (layouts)

•  Placés dans le répertoire res/layout de l’arborescence du projet •  Possibilité de visualiser le contenu du fichier:

•  Sous forme de code XML (onglet Text) •  Sous forme graphique (onglet Design) : mise à disposition d’une palette de

composants graphiques à glisser-déplacer vers l’emplacement désiré

•  Chaque composant graphique est représenté par un élément XML, dont les attributs décrivent l’aspect ou le comportement.

Dr. L i l i a SFAXI www. l i l i asfax i .wix .com /l i l i asfax i

S l ide 4

Éléments Graphiques de Base

Page 5: P2 éléments graphiques android

Dr. L i l i a SFAXI www. l i l i asfax i .wix .com /l i l i asfax i

S l ide 5

XML Layout: Design

Page 6: P2 éléments graphiques android

Dr. L i l i a SFAXI www. l i l i asfax i .wix .com /l i l i asfax i

S l ide 6

XML Layout: XML Code

Page 7: P2 éléments graphiques android

Layouts

•  ViewGroup qui regroupe un ensemble de widgets ou d’autres layouts •  Plusieurs types de layouts (on citera les plus utilisés)

Dr. L i l i a SFAXI www. l i l i asfax i .wix .com /l i l i asfax i

S l ide 7

Éléments Graphiques de Base

Linear Layout Relative Layout Web View

Organise ses enfants dans une ligne unique verticale ou horizontale.

Spécifie les emplacements des objets fils relativement les uns aux autres.

Affiche des pages web.

<html>

<!–– web page ––>

</html>

Page 8: P2 éléments graphiques android

Exemple de Layouts

Dr. L i l i a SFAXI www. l i l i asfax i .wix .com /l i l i asfax i

S l ide 8

Éléments Graphiques de Base

Page 9: P2 éléments graphiques android

UTILISATION DES COMPOSANTS GRAPHIQUES Éléments Graphiques Android

Dr. L i l i a SFAXI www. l i l i asfax i .wix .com /l i l i asfax i

S l ide 9

1.  Environnement de Développement Android 2.  Architecture Android 3.  Conduite d’un Projet d’App. Android 4.  Structure d’une Application Android 5.  Cycle de Vie d’une Application Android 6.  Éléments de Base d’une Application Android 7.  Services Android

Page 10: P2 éléments graphiques android

Identifiant et Fichier R.java

•  Pour pouvoir utiliser un composant graphique, il faut lui associer un id •  Représenté dans le layout XML par l’attribut android:id •  En général sous la forme: @+id/nom_id

•  @ : variable particulière, doit être parsée par le parseur XML •  + : un identifiant avec la valeur nom_id sera généré, et ajouté automatiquement

à la classe R

•  Fichier R.java •  Contient un ensemble de classes générées automatiquement à partir du

répertoire res. •  Chaque classe représente un ensemble de propriétés utilisables dans le

code Java •  Fichier généré, ne doit donc pas être modifié à la main!

Dr. L i l i a SFAXI www. l i l i asfax i .wix .com /l i l i asfax i

S l ide 10

Utilisation des Composants Graphiques

Page 11: P2 éléments graphiques android

Dr. L i l i a SFAXI www. l i l i asfax i .wix .com /l i l i asfax i

S l ide 11

R.java

Page 12: P2 éléments graphiques android

Code des Activités

•  Les fichiers sources représentant le comportement de l’application sont définis dans le répertoire src, dans une arborescence de packages

•  Chaque activité doit : •  Être définie dans un fichiers .java à part •  Hériter (directement ou indirectement) de la classe android.app.Activity •  Implémenter la méthode onCreate() pour définir le comportement de

l’activité à sa création •  Appeler la méthode setContentView() dans le code de onCreate pour définir

le layout de cette activité (fichier Layout XML associé)

•  L’implémentation des autres méthodes de transition (onPause, onDestroy…) est optionnelle

Dr. L i l i a SFAXI www. l i l i asfax i .wix .com /l i l i asfax i

S l ide 12

Utilisation des Composants Graphiques

Page 13: P2 éléments graphiques android

Dr. L i l i a SFAXI www. l i l i asfax i .wix .com /l i l i asfax i

S l ide 13

HelloworldActivity.java

Page 14: P2 éléments graphiques android

Comportement d’un Élément Graphique

•  Considérons l’objet de type Button défini précédemment •  Objectif:

•  Afficher: Hello <nom> en cliquant sur le bouton (<nom> étant la chaîne saisie dans le EditText)

Dr. L i l i a SFAXI www. l i l i asfax i .wix .com /l i l i asfax i

S l ide 14

Utilisation des Composants Graphiques

Page 15: P2 éléments graphiques android

Comportement d’un Élément Graphique

•  Il existe trois manières pour définir le comportement du bouton button Façon 1:

1.  Définir un objet Java de type android.widget.Button

2.  Initialiser cet objet en l‘associant à son équivalent dans le fichier XML

3.  Définir le comportement de ce bouton

Dr. L i l i a SFAXI www. l i l i asfax i .wix .com /l i l i asfax i

S l ide 15

Utilisation des Composants Graphiques

Page 16: P2 éléments graphiques android

Dr. L i l i a SFAXI www. l i l i asfax i .wix .com /l i l i asfax i

S l ide 16

Façon 1

Page 17: P2 éléments graphiques android

Comportement d’un Élément Graphique

Façon 2: 1.  Définir un objet Java de type android.widget.Button 2.  Initialiser cet objet en l‘associant à son équivalent dans le fichier XML 3.  Implémenter l‘interface android.view.View.OnClickListener

4.  Surcharger la méthode onClick

Attention, cette méthode sera commune à tous les éléments cliquables, i l faut donc distinguer le comportement selon l ‘ identifiant de l ‘élément cliqué

5.  Définir la classe en cours comme étant le Listener du bouton myBytton

Dr. L i l i a SFAXI www. l i l i asfax i .wix .com /l i l i asfax i

S l ide 17

Utilisation des Composants Graphiques

Page 18: P2 éléments graphiques android

Dr. L i l i a SFAXI www. l i l i asfax i .wix .com /l i l i asfax i

S l ide 18

Façon 2

Page 19: P2 éléments graphiques android

Comportement d’un Élément Graphique

Façon 3:

1.  Dans le fichier layout XML, associer au bouton le nom d‘une méthode qui définira son comportement au clic

2.  Dans la classe Java de l‘activité, créer et implémenter cette méthode en respectant les contraintes suivantes:

1.  Elle doit retourner void 2.  Elle doit porter le nom défini dans le fichier layout XML 3.  Elle doit définir un paramètre de type android.view.View

Dr. L i l i a SFAXI www. l i l i asfax i .wix .com /l i l i asfax i

S l ide 19

Utilisation des Composants Graphiques

Page 20: P2 éléments graphiques android

Dr. L i l i a SFAXI www. l i l i asfax i .wix .com /l i l i asfax i

S l ide 20

Façon 3 HelloworldActivity.java

activity_helloworld.xml

Page 21: P2 éléments graphiques android

Atelier Ma première application, Cycle de vie, Comportement

Dr. L i l i a SFAXI www. l i l i asfax i .wix .com /l i l i asfax i

S l ide 21

Page 22: P2 éléments graphiques android

Ma Première Application

Nous allons utiliser l’environnement de développement Android Studio, et la version 5.0.1 d’Android (API 21) •  Créer votre première application Android appelée HelloworldApplication

avec une activité de type Blank Activity •  Explorer le code de votre activité ainsi que le layout XML •  Configurer votre émulateur avec ces paramètres : Nexus One, 3.7"

480*800 hdpi •  Lancer l’émulateur.

•  I l est conseillé de le démarrer une seule fois, et de le laisser actif, puis configurer votre application pour se lancer automatiquement sur lui.

Dr. L i l i a SFAXI www. l i l i asfax i .wix .com /l i l i asfax i

S l ide 22

Atelier 1

Page 23: P2 éléments graphiques android

Cycle de Vie

Nous désirons spécifier un comportement pour chacun des évènements dans le cycle de vie de notre activité principale HelloworldActivity. Pour cela, nous devons redéfinir les méthodes correspondantes à chaque événement. Dans le fichier HelloworldActivity.java, nous remarquons que la méthode onCreate est déjà générée   : c’est la seule méthode obligatoire. Pour générer les autres méthodes de transition, commencer à taper le nom de la méthode dans le fichier de code, puis cliquer sur Ctrl-Espace . 1.  Générer les méthodes correspondant à chacun des évènements listés dans le cycle de

vie. 2.  Nous désirons voir le comportement de l’activité pour chacun de ces évènements.

Pour cela, chaque méthode va afficher son nom dans un Toast. 3.  Exécuter votre application. Que constatez-vous  ? A quels moments sont appelés les

différentes méthodes que vous avez ré-implémenté  ?

Dr. L i l i a SFAXI www. l i l i asfax i .wix .com /l i l i asfax i

S l ide 23

Atelier 2

Page 24: P2 éléments graphiques android

Greeting Personnalisé

Nous nous proposons de créer une application intitulée Greeting afin de correspondre à l’interface et comportement suivants:

Dr. L i l i a SFAXI www. l i l i asfax i .wix .com /l i l i asfax i

S l ide 24

Atelier 3