2013-09-23 3 views
0

Я хочу выполнить загрузку изображения в контейнере. Некоторое время спустя я нашел, что могу использовать Loader. Однако изображение первоначально было отображено элементом BitmapImage.Flex AS3: Как загрузить изображение динамически?

Вопрос, который у меня для вас есть, если это хороший способ загрузить изображение, инициализируя BitmapImage, установив источник и добавив его в контейнер, или я должен пойти на путь «Loader»?

UPDATE:
Это код, который я изменил его использовать Image, зарегистрировал READY событие, но оно не срабатывает.

protected function loadCompleteHandler(event:Event):void 
{ 
    imageContainer.addElement(attachedImage); 
} 

protected function loadAttachedImage():void { 
    attachedImage = new Image(); 
    attachedImage.addEventListener(FlexEvent.READY, loadCompleteHandler, false, 0, true); 
    attachedImage.source = "assets/images/layouts/bottomAligned.png"; 
} 

ответ

2

Если вы используете Flex, вы должны использовать либо BitmapImage или Image. Loader не является компонентом Flex и не должен использоваться в любое время в приложении Flex. Loader - это способ загрузки и отображения изображения в проекте pure-ActionScript.

+0

Это хорошая возможность использовать Loader и поместить его содержимое в BitmapImage? – Andrew

+2

Зачем вам? И «BitmapImage», и «Image» могут загружать изображения из одних и тех же источников и несколько других. Все, что вам нужно сделать, это установить свойство 'source', и оно автоматически загружает его. –

+1

Вам необходимо подключить слушателя непосредственно к изображению, а не к свойству 'contentLoaderInfo', как вы это делаете с помощью« Loader ». Поэтому 'Image.addEventListener (Event.COMPLETE, completeHandler)' вместо 'Image.contentLoaderInfo.addEventListener (Event.COMPLETE, completeHandler)' –

Смежные вопросы