AS3中for循环创建(复制)对象

as3的方法:
方法常用的有两种,
第一种适用所有的对象,方法是先建一个数组,然后把建立的对象的引用指定对数组相应的索引
第二种适用显示对象,其实在as3中,都应该用这种方式,就是给对象指定name,然后使用getChildByName的方式来引用该对象.

//通用的方法,适用所以对象
var obj:Array = new Array()
for(var i:uint=0;i<10;i++){
var m:MovieClip = new MovieClip()
addChild(m)
obj["mc"+i] = m
}
trace(obj["mc1"])

//适用显示对象
for(var k:uint=0;k<10;k++){
var mm:MovieClip = new MovieClip()
mm.name = "mc"+k
addChild(mm)
}
trace(getChildByName("mc1"))


另外,有时候我们会遇到这样的情况
var obj0:MC0 = new MC0()
var obj1:MC1 = new MC1()
var obj2:MC2 = new MC2()
var obj3:MC3 = new MC3()

这个时候,我们可以使用getDefinitionByName,用字符串返回类

for(var i:uint=0;i<4;i++){
var _class:Class = getDefinitionByName("MC"+i) as Class
var m = new _class()
addChild(m)
}
posted @ 2012-07-12 01:00  rob_2010  阅读(238)  评论(0编辑  收藏  举报