Flash Starling диспетчерские события - PullRequest
1 голос
/ 07 ноября 2011

Можно ли отправить данные на скворец после его создания?
var mStarling:Starling = new Starling(StarlingClass, stage);

Или путем отправки событий из основного класса и последующего прослушивания этих событий в классе скворец?

Ответы [ 2 ]

1 голос
/ 25 ноября 2011

Я не думаю, что вы можете передавать события между обычным экранным объектом и скромным экранным объектом.Основной причиной этого является тот факт, что все экранные объекты Starling рисуются на графическом процессоре, а точнее stage3d.

Обычное событие во Flash проходит через весь список отображения.Поскольку stage3d не является частью списка отображения, я не думаю, что объекты stage3d могут прослушивать ваши события.

Я бы посоветовал вам изучить такие параметры, как as3 сигналов , чтобы добиться того же.Это должно работать, поскольку сигнал as3 не зависит от иерархии списка отображения.

1 голос
/ 08 ноября 2011

Вы можете определенно слушать событие с классом Starling так же, как и с любым другим классом.

Например, в классе скворец вы могли бы сделать что-то вроде ..

this.addEventListener( "CustomEvent", PROCESS_METHOD );

Тогда в вашем основном классе вы можете позвонить ..

dispatchEvent(new Event("CustomEvent"));

Если вы хотите передать значения, вам нужно либо прикрепить событие к динамическому объекту, к которому у mStarling есть доступ (например, к мувиклипу). Или вы можете создать объект, расширяющий Event, который вы можете отправить вместо нового Event ("CustomEvent");

...