AS3: Доступ к [Embed] активам внешних SWF - PullRequest
0 голосов
/ 25 сентября 2019

Я пытаюсь использовать внешние SWF-файлы с активами [Embed].Когда я пытаюсь получить доступ к этим ресурсам с помощью моего основного SWF-файла, в именах классов этих активов есть что-то странное.Вот класс документов моего внешнего актива SWF:

package {

    import flash.display.MovieClip;

    public class Asset01 extends MovieClip {
        [Embed(source="asset01.dat", mimeType="application/octet-stream")]
        static public const AssetClass:Class;

        public function Asset01() {}
    }

}

Я установил класс ресурса [Embed] на public, чтобы иметь доступ к нему извне, но когда я загружу SWF из моегоmain SWF и используйте ApplicationDomain.getDefinition для получения ссылки на него, имя класса, которое мне нужно передать, это «Asset01_AssetClass», а не фактическое имя класса ресурса [Embed], которое является «AssetClass».Почему это?Могу ли я всегда предполагать, что именем класса будет имя класса документа плюс подчеркивание плюс имя класса [Embed]?Я бы никогда не догадался, что это имя класса, которое мне нужно было использовать, если бы я не набрал ApplicationDomain.getQualifiedDefinitionNames, чтобы получить список всех загруженных классов.

...