0

我在舞台上有多个文本字段,我想一次向所有文本字段添加一个 eventListener,而不必为每个文本字段分配实例名称。我可以通过简单地向 TextField 类添加一个 eventListener 来做到这一点,以便每个文本对象都可以拥有这个 eventListener 吗?提前致谢

4

2 回答 2

0

如果你的 TextField 在主舞台上,你可以这样做:

 for (var i:int=0; i<this.numChildren; i++) {
      var do:DisplayObject = this.getChildAtIndex(i);
      if (do is TextField) {
           do.addEventListener (yourListener, yourCallback);

      }

 }
于 2013-02-25T18:51:58.647 回答
0

如果您要让 TextFields 在显示列表中打开和关闭,您可以执行一些操作,例如为ADDED_TO_STAGE. 此事件不会冒泡,因此您需要将useCapture标志设置为 true。

侦听器可能看起来像:

受保护的函数 onAdded(e:Event):void {
   if (e.target 是 TextField) {
       e.addEventListener(someEvent, someFunction);
   }
}
于 2013-02-25T19:08:42.673 回答