我有很多动画片段被动态地添加到舞台上并且相对于它们被添加的顺序定位,所以它们制作了一个很好的列表,中间有一点空间。我有一个按钮,如果需要,可以从舞台上删除影片剪辑。我需要运行一个函数来遍历剩余的动画片段并重新定位它们,这样如果删除它们,它们会再次排列在列表中。我不知道如何实现这一目标。有什么想法吗?
杰米
答案 0 :(得分:2)
如果在创建动画片段时,将它们存储在如下数组中:
var clipStore:Array = [ ];
for (var i:int=0; i < numClips; i++){
var clip:MovieClip = new MovieClip();
clipStore.push(clip);
}
稍后当您删除其中一个对象以及它在数组中的引用时,您可以使用该数组遍历这些项并更新每个项的位置。
var clipStoreLength:int = clipStore.length;
for (var i:int=0; i < clipStoreLength; i++){
MovieClip(clipStoreLength[i]).y = i * (clipHeight + span);
}