actionscript-3 - 用于监视从显示列表中添加/删除 MovieClips 的事件?

标签 actionscript-3

我有一个影片剪辑,我们称它为“myMC”,它非常长(5,000 帧),在此过程中,许多嵌套的影片剪辑作为子项添加到“myMC”或从“myMC”中删除。

在不引用嵌套剪辑的情况下,有没有一种方法可以将监听器添加到 myMC 并监听何时从中添加/删除对象(类似于 Event.ADDED) ?

最佳答案

Event.ADDEDEvent.REMOVED 将帮助您。

这些事件是 bubbling ,所以没有必要听直接 parent 的。您可以在任何显示祖先中捕获这些事件,如下例所示。

import flash.events.Event;
import flash.display.Sprite;

var onAdded:Function = function (event:Event) : void
{
    // event.target references the display object being added
    trace(event.type +": '" + event.target.name+"'");
}

var onRemoved:Function = function (event:Event) : void
{
    // event.target references the display object being removed
    trace(event.type+": '" + event.target.name+"'");
}

addEventListener(Event.ADDED, onAdded);
addEventListener(Event.REMOVED, onRemoved);

var container:Sprite = new Sprite();
container.name = 'Container here'
addChild(container);

var test:Sprite = new Sprite();
test.name = "I am the one!";
container.addChild(test);
container.removeChild(test);

/*
added: 'Container here'
added: 'I am the one!'
removed: 'I am the one!'
*/

关于actionscript-3 - 用于监视从显示列表中添加/删除 MovieClips 的事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6685194/

相关文章:

ios - AS3 - 在 iOS 中从外部 .swf 实例化对象

c - AS3 两种算法的上次幂实现

actionscript-3 - 如何延迟while循环?

flash - 将参数传递给事件监听器/处理程序

regex - 编写语法荧光笔

xml - 验证 Flex/actionscript 的 XML 解析器?

actionscript-3 - 实例化对象时省略括号有什么区别吗?

php - SWF 中的嵌入式 ActionScript

apache-flex - 使用 Flex 3 绘制这样的东西的最佳方法是什么?

flash - SWF_Object的静态发布方法中是否有传递flashvars?