Показать сообщение отдельно
Старый 03.11.2009, 15:23
incorp вне форума Посмотреть профиль Отправить личное сообщение для incorp Найти все сообщения от incorp
  № 1  
Ответить с цитированием
incorp

Регистрация: Nov 2008
Адрес: Москва
Сообщений: 92
По умолчанию Loader не добавляется в список отображения(грузим ас2)

Как обычно сразу к коду:
Код AS3:
private function doLoadComponent( component:ComponentBean, params:Object ) : void {
loader_as2 = new SWFLoader();
target.addChild( loader_as2);
//... дальше идет создание реквеста и лоад. работает, заменяем на
 
private function doLoadComponent( component:ComponentBean, params:Object ) : void {
loader_as2 = new Loader();
target.addChild( loader_as2);
//... перестает работать, Error #1034: Ошибка типа Coercion: невозможно преобразовать flash.display::Loader@4e5d641 в mx.core.IUIComponent.
в хелпе черным по русскому написано: addChild(ldr); тобишь в список отображения должен добавляться сам лоадер. может не туда добавляем? но ведь SWFLoader добавляли и все было хорошо.
П.С. как человек который любит лично разбивать лоб о грабли я проверил утверждение о том, что если через SWFLoader грузить as2, загруженое содержимое будет работать не адекватно. Не адекватно равно вот чему:
трейс при первой загрузке:
in first frame: _root=_root/this=_root/_level0=undefined/_global.tempvar = 123
in LocalConn from flex: _root=_root/this=[object Object]/_level0=undefined/_global.tempvar = 123
in root func: _root=_root/this=_root/_level0=undefined/_global.tempvar = 123

трейс при повторной загрузке в той же сессии:
in first frame: _root=_root/this=_root/_level0=undefined/_global.tempvar = 123
in LocalConn from flex: _root=undefined/this=[object Object]/_level0=_level0/_global.tempvar = undefined
in root func: _root=undefined/this=_level0/_level0=_level0/_global.tempvar = undefined
При первой загрузке у нас в LC есть рут, но нет левел0, при повторной все ровно наоборот. На мой взгляд очень познавательно, не так ли?


Последний раз редактировалось incorp; 03.11.2009 в 15:26.