0
我需要从ActionScript 3获取我的SWF的URL才能解析它(不能使用loaderInfo.parameters
)。从AS3获取swf URL
我试过使用root.loaderInfo.url
,但它返回null
。 FlexGlobals.topLevelApplication.url
将引发错误,因为topLevelApplication
不存在。我错过了什么吗?
我需要从ActionScript 3获取我的SWF的URL才能解析它(不能使用loaderInfo.parameters
)。从AS3获取swf URL
我试过使用root.loaderInfo.url
,但它返回null
。 FlexGlobals.topLevelApplication.url
将引发错误,因为topLevelApplication
不存在。我错过了什么吗?
好吧,明白了。正如Yasuyuki Uno在评论中建议的那样,应该在INIT事件之后调用url
属性。
所以我不得不
public function MyClass()
{
root.loaderInfo.url; // null
}
它应该是
import flash.events.Event;
public function MyClass()
{
root.loaderInfo.addEventListener(Event.INIT, _onInit);
}
private function _onInit(ev:Event) : void
{
root.loaderInfo.url; // we have the URL now
}
你试图让'FlexGlobals.topLevelApplication.url'应用程序初始化之后? ex)这不起作用,因为此代码尝试在应用程序初始化事件之前获取。 'public var url:String = FlexGlobals.topLevelApplication.url;' –