如何在AS3中构造嵌套事件侦听器

时间:2014-01-07 13:28:39

标签: actionscript-3 movieclip event-listener

与AS3一起工作,并就如何编程来解决这个问题。我有一个代表103的数字的类。我为每个数字都有一个movieclip,我将其添加到一个持有的movieclip然后添加到舞台上。我希望能够单击一个数字,如数字103中的零,并让它作出反应,因为它是一个单独的动画片段,同时双击整个数字并做出反应。有没有办法干净地做到这一点,而且混淆下面的代码就是我到目前为止所拥有的。

public function test()
    {
        numberimage = new MovieClip();
        var images:Vector.<MovieClip> = generateNumericArray("");
        for (var i:int = 0; i < String(value).length; i++) {
            var temp:MovieClip = parsevalue(String(value).substr(i,1),images);
            temp.x = i*50;
                            temp.addEventListener(MouseEvent.CLICK,click)
            numberimage.addChild(temp);
        }
        numberimage.addEventListener(MouseEvent.MOUSE_DOWN,drag);
        numberimage.addEventListener(MouseEvent.MOUSE_UP,drop);
        numberimage.addEventListener(MouseEvent.MOUSE_OVER,doubleClick);
        stage.addChild(numberimage);
    }

对此的任何帮助都将非常感激

2 个答案:

答案 0 :(得分:0)

执行操作,双击剪辑:停止收听主电影,然后立即收听子剪辑。单击主剪辑外部,回放主电影并停止收听其子女。

答案 1 :(得分:0)

不确定这是否是您正在寻找的100%:根据您添加侦听器的内容,使用以下内容。您必须先启用双击

numberimage.doubleClickEnabled = true;
numberimage.addEventListener(MouseEvent.DOUBLE_CLICK, click);