J'essaie de charger un fichier SWF compilé par le SDK Flex dans un fichier SWF exporté par l'IDE Flash et d'instancier les actifs via getDefinition(). Normalement, cela fonctionne bien avec les ressources exportées de l'EDI Flash puis chargées dans un autre fichier SWF à partir de l'IDE Flash.Flex SWF actifs chargés dans Flash SWF à l'exécution au sein même ApplicationDomain
Voilà comment je pouvais normalement faire cela en utilisant uniquement l'IDE Flash:
Loader -> Utilisation de même ApplicationDomain -> getDefinition (classe)
Maintenant, en utilisant le 'test .as' compilées à partir de Flex SDK en utilisant le [Embed] balise de métadonnées:
Loader -> Utilisation de même ApplicationDomain -> getDefinition ("test _" + classe)
le problème est que je préfère ne pas avoir à garder une trace des bibliothèques d'actifs chargé de préfixer le nom de la classe I aimerais obtenir (('Test _ "+ classe) vs (classe)). Existe-t-il un moyen de faire cela sans faire référence à la bibliothèque dans laquelle la classe est tirée depuis ou sans accéder au chargeur d'origine? De cette façon, je n'ai pas besoin de savoir de quel swf provient l'asset, juste le nom de la classe que je pourrais instancier à partir de l'actuel ApplicaitonDomain.
Merci
En y réfléchissant plus, je pense que c'est logique. La balise [Embed] incorpore l'actif dans cette classe plutôt que dans l'étape de cette classe. C'est pourquoi, en utilisant flex, vous devez préfixer la définition avec la classe dans laquelle elle était intégrée plutôt que d'être disponible dans l'espace de noms global. Je devrai juste coder en dur le nom de classe de chaque bibliothèque dans la classe de fabrique pour ce type d'objet afin de l'instancier. Désolé d'avoir dérangé! –