actionscript-3 – AS3从外部SWF实例化类

前端之家收集整理的这篇文章主要介绍了actionscript-3 – AS3从外部SWF实例化类前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在和我的伙伴聊聊这件事,他确信你可以做到这一点并说他已经做到了,但是我无法让它发挥作用.

我想知道它是否有可能.我尝试在外部下载的SWF中键入一个var作为一个类,然后创建一个实例但不能做.

一些代码

私有静态函数onCompleteHandler(e:Event)
{
    dashboardObject = e.target.content;
        // registerClassAlias(“仪表板”,);不起作用
    var dash:Class = getDefinitionByName(“Dashboard”)作为Class;
    var myDash = new dash();
    迹(myDash.show);
}

错误

ReferenceError:错误#1065:未定义变量仪表板.
    at global / flash.utils :: getDefinitionByName()
    在System $/ onCompleteHandler()

因此,除非在项目SWF中编译,否则您似乎无法创建类的实例.如果这是真的是我想要它做的事情.我不希望人们试图通过下载SWF文件来创建我的类的实例,而不是我在这里构建的内容.

谢谢

解决方法

你需要做两件事:

>为Dashboard提供一个包(package.to.Dashboard).无包类具有编译形式的不同属性(受保护的命名空间),而不是具有包的属性,使得外部SWF无法访问它们.
>确保已加载的SWF已加载到与父项相同的ApplicationDomain中

然后,您应该能够从加载的SWF中使用getDefinitionByName并重新获得返回类.

猜你在找的Flash相关文章