![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
буду краток
модератор форума
Регистрация: Sep 2003
Адрес: Ближайшее Замкадье
Сообщений: 3,110
Записей в блоге: 28
|
Тут вдруг вопрос возник: имеем основной мувик (класс) подгружающий чилда, который должен реализовать определенный интерфейс. можно ли отследить соответствие конкретному интерфейсу на этапе выполнения?
__________________
Отряд Котовскага |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
Ммм, is?
|
|
|||||
|
буду краток
модератор форума
Регистрация: Sep 2003
Адрес: Ближайшее Замкадье
Сообщений: 3,110
Записей в блоге: 28
|
Точно!!! я думал только по классам работает.
даже проверил)) package { import flash.display.Loader; import flash.display.MovieClip; import flash.events.Event; import flash.net.URLRequest; /** * ... * @author k0t0vich (c) 2009 b_konstantin@list.ru http://islandsworld.ru/ */ public class Main extends MovieClip { var loader:Loader public function Main() { loader = new Loader(); loader.load(new URLRequest("child.swf")); loader.contentLoaderInfo.addEventListener(Event.INIT, checkChild); } private function checkChild(e:Event) { var __child = e.target.content; if (__child is IChild) { trace ("ok "+__child); } } } } package { import flash.display.MovieClip; public class Child extends MovieClip implements IChild { } }
__________________
Отряд Котовскага |
|
|||||
|
Регистрация: Nov 2004
Адрес: Москва
Сообщений: 21
|
Как использовать интерфейс? его тогда надо вставлять и в загружающую флэшку и в загружаемую. и должно выполняться все тоже что и для классов. я про совпадение путей. можно взять класс из загруженой флэшки но кастануть в него нельзя. или модет все таки можно?
1046: Тип не найден или не является константой времени компиляции: extClass.
__________________
Нехрен тут нахрен |
|
|||||
|
стервочка (я мужик)
|
нельзя. можите использовать либо типизацию болие низких классов, либо юзать external библиотеки.
|
|
|||||
|
Регистрация: Mar 2009
Сообщений: 357
|
а как просто обратиться к свойству загруженной sfw? пишу:
а вылезает ошибка: такой свойство не найдено. хотя в main классе подгружаемой swf оно есть: никак не могу понять, в чем ошибка? пример проще некуда, из хелпа, но не получается (. |
|
|||||
|
Modus ponens
|
loader.content является DisplayObject у DisplayObject нет свойства zzz.
По поводу интерфейсов и кастинга - важный момент, класс / интерфейс должен быть не просто один и тот же, он еще и в одном и том же домейне должен быть. Т.е. если у вас есть foo.bar.MyClass в домейне www.example.com а другой foo.bar.MyClass в домейне www.example.net - то кастовать вы не сможете - как раз в таком случае и будет ошибка "невозможно привести типы <одинаковые на вид названия>". Кроме того, по поводу загрузки модулей полезно знать: http://www.flashdevelop.org/communit...hp?f=13&t=4953
__________________
Hell is the possibility of sanity |
|
|||||
|
Регистрация: Mar 2009
Сообщений: 357
|
wvxvw, как тогда обратится к свойствам класса загружаемой swf?
|
|
|||||
|
[+1 10.12.10]
|
loover, интерфейсы. О них говорили выше. В аттаче пример.
|
|
|||||
|
Регистрация: Mar 2009
Сообщений: 357
|
murz, спасибо, но я уже реализовал через localConnection. или для моих целей (отсылка события один раз в лоадер) это избыточно?
|
![]() |
![]() |
Часовой пояс GMT +4, время: 00:32. |
|
|
« Предыдущая тема | Следующая тема » |
|
|