只是想我会分享一些我发现的东西来帮助跨应用程序传递数据我想知道其他人对此有何看法在 May 应用程序中的任何地方使用,所以这就是我想出的。
我扩展 Application 类并包装在一个抽象函数中,该函数在任何地方注册任何组件的函数,并在最顶层捕获它并传递到我选择的任何地方。
public class AxApplication extends Application
{
public var ___registeredEvents:Array = new Array();
public var ___registeredFunctions:Array = new Array();
function AxApplication()
{
super();
}
public function localRegisterForEvent(e:Event,func:*,caller:*):void
{
caller.addEventListener(e.type,localCallerEventHandler,true,3);
caller.addEventListener(e.type,localCallerEventHandler,false,3);
___registeredEvents.push(e);
___registeredFunctions.push(func);
}
public function localCallerEventHandler(e:*):void
{
if(e!=null)
{
for(var i:int = 0 ; i< ___registeredEvents.length; i++)
{
if(e.type == ___registeredEvents[i].type)
{
___registeredFunctions[i](e);
//注册的函数被调用 //没有实现垃圾回收!
}
}
}
}
}