Actionscript 3 将eventlistener添加到类创建的movieClips
我可能问错了问题,但我正在尝试将evenListeners添加到movieClips中,movieClips是由我的一个类中的方法创建的 从主时间线创建我的类的实例,然后将该实例添加到阶段:Actionscript 3 将eventlistener添加到类创建的movieClips,actionscript-3,flash,class,movieclip,Actionscript 3,Flash,Class,Movieclip,我可能问错了问题,但我正在尝试将evenListeners添加到movieClips中,movieClips是由我的一个类中的方法创建的 从主时间线创建我的类的实例,然后将该实例添加到阶段: //MY CLASS var createSlide:AddItems = new AddItems(); var scrollClip:Sprite = new Sprite(); addChild(scrollClip); //ADDIMAGES CREATES 4 MOVIECLIPS crea
//MY CLASS
var createSlide:AddItems = new AddItems();
var scrollClip:Sprite = new Sprite();
addChild(scrollClip);
//ADDIMAGES CREATES 4 MOVIECLIPS
createSlide.addImages(BG,image1,image2,image3,image4);
//ADD TO STAGE
scrollClip.addChild(createSlide);
那么,如何将事件侦听器添加到CreateSiled创建的movieClips中呢
如果你需要更多的信息或这是不清楚,请让我知道 如果不知道附加项中发生了什么,很难说 大概是
AddItems
扩展了Sprite
,并将新创建的对象添加到自身中。在这种情况下,您应该能够使用getChildAt()
访问它们
您还可以将它们公开为AddItems
类的公共属性
最后,您可以在
AddItems
类本身中侦听事件,并将它们作为AddItems
自己的事件再次分派。我建议这样做,因为它从未让我失望过:
for each(var mc:MovieClip in scrollClip)
mc.addEventListener("myEvent", onMyEventHandler);
如果您在scrollClip中有其他电影剪辑,并且您不想向其中添加侦听器,唯一的方法是向添加的孩子添加名字,然后像我的示例中那样迭代这些孩子并添加侦听器。不确定这是否是您要求的,请尝试以下操作:
var totalChild = createSlide.numChildren-1;
for(var i:int=0;i<totalChild;i++){
var childd = createSlide.getChildAt(i);
childd.addEventListener("event type","func handler");
}
....
//ADD TO STAGE
scrollClip.addChild(createSlide);
var totalChild=createSlide.numChildren-1;
对于(变量i:int=0;i
var totalChild = createSlide.numChildren-1;
for(var i:int=0;i<totalChild;i++){
var childd = createSlide.getChildAt(i);
childd.addEventListener("event type","func handler");
}
....
//ADD TO STAGE
scrollClip.addChild(createSlide);