Bonjour,
je suis en train de construire une galerie d'images dont l'adresse est dans un fichier XML dont voici le code:
mon problème est qu'une seule image n'apparait au final.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56 package classes{ import flash.media.*; import flash.net.URLRequest; import flash.net.URLLoader; import flash.display.MovieClip; import flash.events.*; import flash.utils.Timer; import flash.text.*; import fl.containers.UILoader; import flash.display.Loader; public class Diapo extends MovieClip { private var monXML:XML; private var uiload:UILoader = new UILoader(); private namespace xmlns="http://xspf.org/ns/0/"; private var images:Array = new Array(); private var img_tmb:imgTmb; private var imageLoader:Loader; public function Diapo(){ var chargeur:URLLoader = new URLLoader (); var adresse:URLRequest = new URLRequest ("xml.xml"); chargeur.load(adresse); chargeur.addEventListener(Event.COMPLETE, fichierXML); } public function fichierXML(evt:Event):void{ this.monXML = new XML(evt.target.data); var i:Number =0; use namespace xmlns; for each(var menu:XML in this.monXML..page){ images[i]=(monXML..page[2].photo[i]); i++; } for (var j= 0; j<images.length; j++) { var url:String = "img/tmb/"; trace(images[j]); imageLoader = new Loader(); imageLoader.load(new URLRequest(url+images[j])); imageLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, imageLoaded); img_tmba.y = 7; img_tmba.x = j*80; } } function imageLoaded(e:Event):void { trace("a"); img_tmba.addChild(imageLoader); } } }
grâce au trace(images[j]), j'ai pu voir que l'adresse des images était correcte.
J'ai fait un trace("a") dans la fonction imageLoaded et le programme rentre effectivement dans la fonction.
les 2 traces combinés rendent ca:
Comme si le for each allait bien plus vite que l'autre fonction et "écrasait" son résultat à chaque fois. Il me faudrait donc un moyen de les faire marcher chacunes leur tour, est-ce possible?1.jpg
2.jpg
3.jpg
4.jpg
5.jpg
a
a
a
a
a
merci
kevin
Partager