我有一个Flex 3.4应用程序嵌入swf与mx:SwfLoader ...
该swf有一个名为“playIt”的公共函数。我已经尝试将事件调度到gettingHere.content,将gettingHere.content强制转换为MovieClip和其他内容......
var swfApp:MovieClip = MovieClip(gettingHere.content); if(swfApp.hasOwnProperty(“playIt”)){ var helloWorld:Function =(swfApp [“playIt”] as Function); 你好,世界(); }
无济于事。救命啊!
答案 0 :(得分:2)
请参阅示例here以与加载的Flex应用程序进行交互。
本质:
var swfLoader:SWFLoader; // assuming loading complete
var loadedSM:SystemManager = SystemManager(swfLoader.content);
var loadedApp:Object = loadedSM.application;
app.playIt();
答案 1 :(得分:0)
您是否可以在运行时将swf加载到Flex而不是嵌入它?我在启动后将swfs加载到Flex中有很好的结果,而嵌入对于访问swf API来说往往会有问题。
在脚本中使用带有eventListeners的Loaders,或者在MXML中使用带有侦听器的mx:SWFLoader应该适合你。