Bonjour à tous,
j'ai réalisé un petit programme as dans le but de faire défiler des images, selon une certaine séquence décidée auparavant, et de boucler dessus. Je débute en flash, du coup j'ai fait du pas à pas, jusqu'à ce que ça marche. Seulement, alors que maintenant j'ai un résultat qui me convient vu que les images défilent, le programme plante au bout de quelques secondes, je dois avoir une fuite par là ou exploser des valeurs, sans savoir quoi.
En gros mon idée est de lire une fois chacune des images, de stocker les différents loader dans un tableau, puis de lancer ma fonction de diapo. Là, je lis un par un les caractères de ma chaine, ajouter le bon child, et je boucle avec le setTimeout pour relancer indéfiniment cette fonction.
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 var temp:int=0; var images:Array = new Array(); var imagestring:String = new String(); var speed:int=20; var position:int=0; var clk:int=0; var messageLength:int=0; var blkvariable:int=0; var previousImg:int= -1; function Script():void { imagestring="0123456789"; messageLength=imagestring.length; for (var i:int=0; i<10; i++) { var image:URLRequest=new URLRequest("../images/"+ i +".GIF"); images.push(new Loader()); images[i].load(image); } stage.frameRate = 50; diapo(); } function diapo():void { var toRead:String=imagestring.charAt(position); var intValue:int=parseInt(toRead,10); this.addChild(images[intValue]); if (position>= messageLength) { position=0; } else { position=position+1; } /*if(previousImg == -1){ previousImg = intValue; } else{ this.removeChild(images[previousImg]); previousImg = intValue; }*/ var td=setTimeout(diapo,1); }
Mais visiblement, afficher ainsi provoque le freeze de l'animation. j'ai essayé avec le code entre commentaire de détruire les child précédents, pour en réduire le nombre, pensant que cela venait de là, mais visiblement non.
Auriez vous une idée d'où peut venir mon problème ?
Partager