Bonjour,

Cela fait quelques jours que je change ma manière de stocker une liste dans le but de l'utiliser dans une gallerie d'image.

J'ai commencé par stocker cela dans un fichier .xml. Si ma machine cela marche parfaitement, mais lorsque je l'envoi sur le serveur, seul 3 images s'affiche. Je me suis dis que cela pouvais provenir du xml et que l'utilisation d'une ArrayCollection pourrait aider. J'ai donc modifier ma liste pour en faire une ArrayCollection mais sans difference!

Je vous met le code que j'utilise ci dessous en esperant que vous pourrez m'aider

Déclaration de la variable contenant la liste des images

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
[Bindable]
  		private var listeImages:ArrayCollection = new ArrayCollection([
  			{petite : './galerie/P1.jpg', moyenne: './galerie/M1.jpg', grande: './galerie/G1.jpg', sens:'L'}, 
  			{petite : './galerie/P2.jpg', moyenne: './galerie/M2.jpg', grande: './galerie/G2.jpg', sens:'H'}, 
  			{petite : './galerie/P3.jpg', moyenne: './galerie/M3.jpg', grande: './galerie/G3.jpg', sens:'H'}, 
  			{petite : './galerie/P4.jpg', moyenne: './galerie/M4.jpg', grande: './galerie/G4.jpg', sens:'H'}, 
  			{petite : './galerie/P5.jpg', moyenne: './galerie/M5.jpg', grande: './galerie/G5.jpg', sens:'L'}
  			]);

Et maintenant la fonction qui doit afficher mes images:

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
private function onComplete(e:Event):void
			{
				xml=new XML(e.target.data);
				trace(xml.image.src.petite.lien);
 
				for (var i:Number=0; i < listeImages.length; i++)
				{
					var image:Image=new Image;
					var canvas:Canvas=new Canvas;
 
					image.source=listeImages[i]['moyenne'];
					if(listeImages[i]['sens'] == 'H')
					{
						canvas.height=327//xml.image[i].moyenne.hauteur;
						canvas.width=245//xml.image[i].moyenne.largeur;	
					}
					else if(listeImages[i]['sens'] == 'L')
					{
						canvas.height=245//xml.image[i].moyenne.hauteur;
						canvas.width=327//xml.image[i].moyenne.largeur;	
					}
					else
					{
						canvas.height=10//xml.image[i].moyenne.hauteur;
						canvas.width=10//xml.image[i].moyenne.largeur;	
					}
 
					image.height=Number("100%");
					image.width=Number("100%");
 
					canvas.addChild(image);
					coverflow.addChild(canvas);
 
					image.addEventListener(MouseEvent.CLICK, mouseClick);
 
					function mouseClick():void
					{
						applicationPopUp(true, image);
					}
				}
				scrollbar.enabled=true;
				scrollbar.pageSize=1;
				scrollbar.maxScrollPosition=coverflow.numChildren - 1;
				scrollbar.scrollPosition=coverflow.selectedIndex;
			}

Cette fonction est appelé lorsque le fichier xml est lu:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
private function init():void
			{
				loader=new URLLoader();
				loader.addEventListener(Event.COMPLETE, onComplete);
				loader.load(new URLRequest("images.xml"));
				couleur="Rouge";
				btnAccueilClick();
			}

Cette fontion est appelé lors de l'ouverture de l'application:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
								layout="absolute"
								xmlns:containers="com.dougmccune.containers.*"
								creationComplete="init()"
								currentState="Accueil">
Voila... je crois avoir tout mis ici, j'éspèrs que certains pourront me donner un indice pour avancer

Bonne soirée!