|
|
|||||
Как достучаться до UIComponent?
Привет,
такая проблема: достаю спрайт из внешней swf с помощью конструкции вида: Все корректно работает, за исключением того случая, когда в спрайте лежит UIComponent, он просто игнорирует его: где getBodyElement - функция, которая получает новый экземпляр спрайт из либы и вытягивает из него DisplayObject по имени. Может так нельзя делать с UIComponent? |
|
|||||
Et cetera
Регистрация: Sep 2002
Сообщений: 30,784
|
И что трейсится? null?
|
|
|||||
не удалось воспроизвести трабл
смотрел так: private function loaderCompleteHandler(evnt:Event):void { //Box - класс спрайта в подгружаемой либе var boxClass:Class = _loader.contentLoaderInfo.applicationDomain.getDefinition("Box") as Class; var box:Sprite = new boxClass(); //urlEditBox - имя компонента в Box'е var urlEditBox:TextInput = box.getChildByName("urlEditBox") as TextInput; //вариант, когда TextInput нет в загружающей флешке - тоже работает //var urlEditBox:DisplayObject = box.getChildByName("urlEditBox"); addChild(urlEditBox);//достается со всеми установленными параметрами } |
|
|||||
Странно, у меня null.
Может потому что я достаю не getChildByName, а box["name"]? (сейчас не за тем компом, потому проверить не могу ) |
|
|||||
Et cetera
Регистрация: Sep 2002
Сообщений: 30,784
|
Скорее всего возвращается либо изначально null, либо не TextInput.
|
|
|||||
странно, я там хоть какое имя пишу, все равно null, ему все равно. но ошибку не показывает. если пишу неверное имя какого-нить MovieClip, то показывает ошибку. может к UI нельзя так обращаться по имени?
|
|
|||||
Et cetera
Регистрация: Sep 2002
Сообщений: 30,784
|
enepx, в общем, машина не едет, что-то под капотом, определенно. Вы даже текст ошибки не потрудились здесь написать, ограничившись словами «показывает ошибку». Я уже не говорю про отсутствие кода метода (глобальной функции?) getBodyElement. Ну коли так, ковыряйтесь сами, мне надоело вытягивать информацию клещами.
|
Часовой пояс GMT +4, время: 02:18. |
|
« Предыдущая тема | Следующая тема » |
|
|