Développement Mobile : Android

35
Cours N°3 Interfaces graphiques Rami AMRI ([email protected]) FST 2011/2012

description

Développement Mobile : Android. Cours N°3 Interfaces graphiques Rami AMRI ([email protected]) FST 2011/2012. Vues et Layouts. Les élements graphiques héritent de la classe View . On peut regrouper des éléments graphiques dans une ViewGroup . - PowerPoint PPT Presentation

Transcript of Développement Mobile : Android

Page 1: Développement Mobile : Android

Cours N°3

Interfaces graphiques

Rami AMRI ([email protected])FST

2011/2012

Page 2: Développement Mobile : Android

Les élements graphiques héritent de la classe View.

On peut regrouper des éléments graphiques dans une ViewGroup.

Des ViewGroup particuliers sont prédéfinis: ce sont des layouts (gabarits) qui proposent une prédispositions des objets graphiques:

Page 3: Développement Mobile : Android

LinearLayout: dispose les éléments de gauche à droite ou du haut vers le bas

RelativeLayout: les éléments enfants les uns par rapport aux autres

TableLayout: disposition matricielle

FrameLayout: disposition en haut à gauche en empilant les éléments

Page 4: Développement Mobile : Android

Les plus importants sont:android:layout_width et android:layout_height:

◦ ="fill_parent": l'élément remplit tout l'élément parent◦ ="wrap_content": prend la place nécessaire à l'affichage

android:orientation: définit l'orientation d'empilement

android:gravity: définit l'alignement des éléments

Page 5: Développement Mobile : Android
Page 6: Développement Mobile : Android

Une interface graphique définie en XML sera aussi générée comme une ressource dans la classe statiqueR.

Le nom du fichier xml, par example accueil.xml permet de retrouver le layout dans le code java au travers de R.layout.accueil.

Page 7: Développement Mobile : Android

Associer la première vue graphique à l'activité principale de l'application :

Page 8: Développement Mobile : Android

Le layout reste modifiable au travers du code, comme tous les autres objets graphiques.

Pour cela, il est important de spécifier un id dans la définition XML du layout (android:id="@+id/accueilid")

Ainsi, on peut accéder à cet élément par son id et agir dessus au travers du code Java:

Page 9: Développement Mobile : Android
Page 10: Développement Mobile : Android

Un Layout peut contenir des éléments graphiques, ou d'autres Layout. Les labels de texte

◦ En XML:

Page 11: Développement Mobile : Android

◦ Par la programmation

Page 12: Développement Mobile : Android

Les images◦ Par Xml

◦ Par la programmation:

Page 13: Développement Mobile : Android

Les Zones textes◦ Par XML

◦ Par la programmation

Page 14: Développement Mobile : Android

Les boutons :◦ En XML:

Page 15: Développement Mobile : Android

La gestion des événements de click se font par l'intermédiaire d'un listener:

Page 16: Développement Mobile : Android

Les listes:Au sein d'un Layout, on peut implanter une liste que l'on pourra dérouler si le nombre d'éléments est important.

pour afficher une liste d’items dans celle-ci, il lui faut un adaptateur de données.

Page 17: Développement Mobile : Android
Page 18: Développement Mobile : Android

Dans notre activité principale, nous allons récupérer notre ListView et lui affecter un adaptateur grâce à la méthode setAdapter,

 Ajoutons-y un objet de type ArrayAdapter, contenant une liste de String avec un layout générique d’item que fournit la plateforme par défaut et enfin la liste des données.

Page 19: Développement Mobile : Android
Page 20: Développement Mobile : Android

Remarque:Syntaxe :ArrayAdapter<Type de données>(le contexte,le style des items,les données);

Page 21: Développement Mobile : Android

Les onglets:La réalisation d'onglets permet de mieux utiliser l'espace réduit de l'écran.

Pour réaliser les onglets, il faut suivre une structure très particulière pour le layout .

Les différents onglets sont ensuite créé dynamiquement par le code, en associant à chaque onglet l'activité correspondante.

Page 22: Développement Mobile : Android
Page 23: Développement Mobile : Android

Main.xml :

Page 24: Développement Mobile : Android

TabWidget : contiendra les onglets

FrameLayout contiendra le contenu de ses onglets

Page 25: Développement Mobile : Android

Ensuite on va crée trois fichiers XML qui contiendra l'interface du contenu de chaque onglet (ici un TextView)

Onglet1.xml

Page 26: Développement Mobile : Android

Onglet2.xml

Page 27: Développement Mobile : Android

Onglet3.xml

Page 28: Développement Mobile : Android

Partie JAVA :

On commence par créer notre activité principale TabAndroidActivity.java

On place tout les imports nécessaires :

Page 29: Développement Mobile : Android

Puis on doit avoir :

Page 30: Développement Mobile : Android

Lier le premier onglet à l’activité principale:

Page 31: Développement Mobile : Android

Lier le deuxième onglet à l’activité principale:

Lier le Troisième onglet à l’activité principale:

Page 32: Développement Mobile : Android

On peut définir l’onglet par défaut avec :  tabHost.setCurrentTab(0);

Maintenant, nous créons nos classes pour les onglets :

Page 33: Développement Mobile : Android
Page 34: Développement Mobile : Android
Page 35: Développement Mobile : Android

Ne pas oublier de déclarer les activités des onglets dans l’android manifest