我的外部swf(ext.swf)已加载到我的FlashDevelop as3项目中。
当我进行检查时(objectsList[0]
是Class1)我即使变得虚假
objectsList[0]
元素是Class1。 Class1在ext.swf
但是当我在外部编写类似(objectListInExternalSwf[0]
为Class1)的命令时
swf然后在我的项目中使用该swf并进行检查(objectsList[0]
是Class1)
我明白了。
我的问题是:我是否必须使用外部swf中的所有类,以便编译器 必须将它们放在swf中,以便它们可以用于其他swf作为外部加载的项目中吗?
答案 0 :(得分:0)
默认情况下,加载SWF时,其内容将被放入单独的ApplicationDomain中。所以,即使你有相同的类,Flash也会认为它是不同的。
要共享相同的类定义,您必须位于同一个ApplicationDomain中(或从其继承):
var l : Loader = new Loader;
l.load( new URLRequest("foo.swf"),
new LoaderContext(false, new ApplicationDomain(ApplicationDomain.currentDomain));