Если вы используете класс Loader, это потому, что контент еще не загружен.
Вероятно, где-то в вашем коде есть что-то вроде этого:
var loader : Loader = new Loader();
loader.load( new URLRequest( "theURL" ) );
stage.addChild( loader );
Теперь все это происходит за несколько миллисекунд. Однако контент, который вы загружаете, на самом деле еще не загружен. Загрузчик находится на сцене, но содержимое не помещается в загрузчик, пока не завершится загрузка.
Вот что вам нужно сделать.
var loader : Loader = new Loader();
loader.contentLoaderInfo.addEventListener( Event.COMPLETE, onImageLoaded, false, 0, true );
loader.load( new URLRequest( "theURL" ) );
stage.addChild( loader );
Затем используйте эту функцию в той же области.
function onImageLoaded( evt : Event ) : void
{
loader.contentLoaderInfo.removeEventListener( Event.COMPLETE, onImageLoaded );
}
В этой функции будет доступно изображение и все его свойства. На самом деле он может еще не отображаться на экране, но это произойдет в следующем кадре, который, вероятно, займет несколько миллисекунд, но, что касается кода, он находится на сцене.
Надеюсь, это поможет!
person
Jordan
schedule
08.01.2013
Event.ADDED_TO_STAGE
работает? Или это отправляется сразу после добавления, только до того, как оно будет отрисовано? - person puggsoy   schedule 09.01.2013ENTER_FRAME
вместо каждых 100 мс может быть лучше. Я мало знаю об оптимизации, но, поскольку вы проверяете, когда он отображается, было бы более эффективно проверять каждый кадр. - person puggsoy   schedule 11.01.2013