我想知道,如果我只能在字符串中拥有对象实例的名称,是否可以访问和使用对象的特定实例?下面的代码可能会更好地解释它。
public function myFunction(){
var myArbItem:mcArbItem = new mcArbItem();
//mcSomeItem has another movieclip on it called 'itemLogo'
//elsewhere there is an object called ArbItem
ArbItem.addEventListener(MouseEvent.CLICK, showItem)
}
private function showItem(e:MouseEvent){
var objectName:String = 'my' + e.target.name;
//now I have the name of the object, that is myArbItem, can I with this
//information e.g. set "myArbItem.itemLogo.visible = false;"
//or "addChild(myArbItem);"?
}
答案 0 :(得分:3)
使用getChildByName
功能。
答案 1 :(得分:0)
您也可以通过以下方式执行此操作:
var objectName = ["my"]+e.target.name;
应强制将其输入影片剪辑或:
var objectName:MovieClip = ["my"]+e.target.name as MovieClip;
我之前使用过这些方法并且效果很好。我在循环中使用它很多,我动态创建对象,需要稍后再引用它们。