juil 10 2009

Astuces #2

Un petit truc que j’ai expérimenté dernièrement, pour faire référence à une classe dynamiquement, à partir d’une chaîne à l’aide de “getDefinitionByName” :

Par exemple, on veut appeler une image BitmapData dans la librairie qui possède un nom de classe.

import flash.utils.getDefinitionByName;

var thumbClass:Class = getDefinitionByName("GrosMinet") as Class;

var thumb:Bitmap = new Bitmap(new thumbClass(0 , 0));

addChild(thumb);

Voilà, l’exemple n’est pas très pertinent mais ça peut être utile pour instancier des objets dont la liste des noms de classe se trouve dans un tableau ordonné et traité avec une boucle.


avr 14 2009

Astuces #1

Dans la vie, il y a souvent des petits trucs, des astuces qu’on est content d’avoir appris par l’expérience (si, si).

Ça peut nous éviter de faire 2 fois la même erreur, et/ou ça peut nous faire gagner du temps pour la prochaine fois qu’on se retrouve dans la même situation.

Bref, tout ça pour dire qu’en Actionscript 3.0, et bien c’est pareil. En fait, j’avais juste envie de poster 2 astuces bien pratiques que j’ai trouvé le week-end dernier.

Les voicis :

  • XML No-Cache Bon là il s’agit de parer à un problème lié aux fichiers XML qui ont tendances à persister dans la mémoire cache du navigateur. Après mises à jour du fichier il se peut que les visiteurs du site continue à charger une vieille version. Pas terrible…Donc lorsque c’est le moment d’appeller le fichier XML, il suffit de rajouter une variable dans l’URL, comme ceci :

    xmlLoader.load(new URLRequest("file.xml?nocache="+getTimer()));

    gettimer() renvoie le nombre de millisecondes qui se sont écoulées depuis le début de la lecture du fichier SWF.

  • Remove All Children Une ligne de code très simple qui permet de supprimer tous les enfants d’un objet DisplayObjectContainer :
    while (mcHolder.numChildren) mcHolder.removeChildAt(0);

Voilà, ça sera tout pour aujourd’hui. Si ça vous tente de laisser vos astuces sur mon blog, allez-y de bon coeur !