我有一个使用以下代码的 .swf 文件:
private function onClick(e:MouseEvent):void {
var popUpClass:Class = getDefinitionByName(e.currentTarget.popUp) as Class;
popUpContent = new popUpClass();
}
但是,当我将该 swf 加载到另一个“容器”swf 中时,我收到了参考错误 #1065。我一直在阅读有关堆栈溢出的几篇文章(例如,this one和this one),但我仍然对该怎么做感到困惑。
例如,我是否要更改“已加载 swf”中的代码以引用它自己的应用程序域(不是容器 swf 的域?),如果是,我该怎么做?
或者我是否加载 swf 文件并在容器的代码中为其分配自己的应用程序域?(不是加载的 swf 的代码?)
另外,我的“e.currentTarget.popUp”只有一个短名称“PopUpWhateverName”,我应该给它一个完整的包名,比如“com.MyLoadedSwf.Assets.PopUpWhateverName”吗?