对于从Document类以外的类派发,我有一个相当不错的句柄,但是当我想从Document类派遣事件并让其他类侦听文档类广播时会发生什么?AS3:如何从文档类派发?
似乎有几种方法可以解决这个问题(即,使用单曲,使用合成,使用MovieClip(root))我只是想知道人们发现什么是“最佳实践”方式?
对于从Document类以外的类派发,我有一个相当不错的句柄,但是当我想从Document类派遣事件并让其他类侦听文档类广播时会发生什么?AS3:如何从文档类派发?
似乎有几种方法可以解决这个问题(即,使用单曲,使用合成,使用MovieClip(root))我只是想知道人们发现什么是“最佳实践”方式?
简单:不要这样做。
为什么不能告诉物体该做什么?文档类位于层次结构的顶部,它应该能够直接操作对象。降低层次结构中的对象应该派遣,但不能降低。
我会做这样的:
在文档类:
public function attachEventListener(event:String, callback:Function) { addEventListener(e, callback, false, 0, true); }
如果你不希望其他类能够访问文档类,我只想把 addEventListener(Event.MY_EVENT, someClass.eventListenerFunction, false, 0, true);
在文档类。
但显然还有其他方法可以做到这一点。取决于你的偏好。
您应该将文档类作为参数传递给其他类构造函数。