:::: MENU ::::

Remplir un PickerList depuis un fichier XML

PickerList (c’est la même chose pour List) depuis un fichier XML. Cette technique facilite la mise à jour des données d’un formulaire en Flash (.swf) sans pour autant changer dans le code AS3 (c’est toute la puissant de l’XML).


J’ai utilisé Citrus Engine + Starling + Feathers pour illustrer cet exemple, donc on va commencer par initialiser notre classe Main :

Ensuite on crée notre classe myZakat qui va hérité de StarlingState :

Avant de commencer nous devons initialiser le thème de Feathers(Open Source User Interface Components for Starling) qu’on va utiliser, pour cela on va télécharger Feathers sur le site officiel pour récupérer un thème par défaut (vous pouvez bien évidement créer ou personnaliser vos propres thème). Une fois Feathers télécharger on récupère le dossier « AeonDesktopTheme » dans thème, ce dossier contient deux sous dossiers :

  • Source : il contient le fichier source qui permet de charger les Assets ainsi que des la paramètres du skin( couleur du text, fond d’écran, etc.)
  • Assets : il contient la textureAtlas (SpriteSheet) du thème.

On copie le contenu du dossier Source dans le dossier src de notre projet et le dossier Assets dans la racine du dossier projet.

Arborescence du projet

Arborescence du projet

Nous allons maintenant dans classe myZakat.as, on rajoute une ligne qui permet d’initialiser notre thème:

Maintenant On va créer le fichier XML « myZakat.xml » qui va nous servir de source pour remplir notre PickerList

Avant toute chose nous devons charger notre fichier XML pour cela nous allons définir une function initXMLData() :

Une fois le chargement du ficher terminé nous allons appelé la fonction chargementComplet, et parser les elements de notre fichier XML dans une XMLList :

Nous allons maintenant initialiser une ListCollection avec un dataDescriptor de type XML pour cela on va créer la fonction initListePays et l’appeler dans la fonction chargementComplet :

Avant de définir la source de notre pickerList, nous devons d’abord  le dessiner et l »ajouter à notre scène via la fonction drawPickerListPays qui sera appelée à la fin de initListePays :

Pour finir il suffit juste de donner la source data pour notre PickerList et afficher les éléments :

Voilà notre tutoriel est arrivé à sa fin, si vous avez des questions ou bien des suggestions n’hésiter pas à me laisser vos commentaires. pour plus de d’information sur les PickerLists je vous invite à lire cet article.

Résultat

Résultat


So, what do you think ?