Добрый день, столкнулся со следующей проблемой:
есть наследуемый от URLLoader класс:

Код:
package main
{
import flash.net.URLLoader;
import flash.net.URLRequest;
import flash.events.*;
import main.*;
public class xmlData extends URLLoader
{
public static var iconsList:XML = null;
public function xmlData():void
{
super();
}
public function loadIconsList():void
{
var request:URLRequest = new URLRequest("data/List.xml");
addEventListener("complete",onComplete);
load(request);
}
public function onComplete(event:Event):void
{
iconsList = XML(URLLoader(event.target).data);
trace(URLLoader(event.target));
trace(iconsList);
removeEventListener("complete",onComplete);
}
}
}
из другого файла создаю объект xmlData, вызываю ф-ию loadIconsList();
в output выводит:

Код:
TypeError: Error #1034: Type Coercion failed: cannot convert flash.net::URLStream@4254461 to flash.net.URLLoader.
at main::xmlData/onComplete()
проверял в debugger'e, всюду выходит так что event.target у ф-ии onComplete ссылается на объект класса URLStream,а не URLLoader, как ожидалось . Откуда он там взялся? Причем св-во data = undefined. Если заменить

Код:
URLLoader(event.target)
на просто data, то, естественно, ничего не получается, т.к. data = undefined. Если загружать файл стандаотным спосбом(создавая объект URLLoader, вешая слушатель на него), то в ф-ии, на которую слушатель указывает, event.target указывает на объект URLLoader и все в порядке. Объясните, пожалуйста, что происходит. Надеюсь все понятно изложил.