2010-03-09 5 views
0
Référencement

chargé je charger un swf dire « test.swf » qui se charge dans imageLoader, donc je peux obtenir son contenu par:Erreur SWF externe

imageLoader.content 

Donc, si je voulais un des movieClips intérieur il que je ferais ceci:

imageLoader.content.testMovie.transform.colorTransform = someTransformation; 

Mais quand je fais cela, puisque le film n'est pas chargé le fichier est compilé et me donne une erreur votre référence à quelque chose qui est pas là. Sinon, comment suis-je censé référencer un contenu qui sera chargé plus tard?

Répondre

1

Attendez jusqu'à ce qu'il soit chargé. Écoutez son événement complete et accédez au contenu à partir de là.

imageLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, onLoad); 
function onLoad(e:Event):void 
{ 
    MovieClip(imageLoader.content).testMovie.transform.colorTransform = someTransformation; 
} 

Si testMovie est encore un autre fichier SWF dynamiquement chargé, attendez jusqu'à ce qu'il soit chargé - écouter l'événement complete envoyé par testMovie.contentLoaderInfo.

Encore mieux, si vous avez accès au fichier SWF chargé, envoyez un événement personnalisé à partir de là lorsque testMovie est chargé et écoutez-le depuis le fichier SWF principal.

0

Vous ne pouvez pas référencer quelque chose qui n'a pas été chargé. Si vous souhaitez appliquer une transformation, vous pouvez le faire sur le plan parent, mais ce n'est peut-être pas ce que vous recherchez.

Questions connexes