2013-02-16 110 views
0

AS3中是否可以創建「API」來添加動畫片段/位圖?我試着這樣做:AS3添加動畫片段槽功能

public function addImage(name:String, x:int, y:int, type:String = "MovieClip", path:String = null) { 
    var mc:MovieClip; 

    if (type == "MovieClip") { 
     var $name = "as_" + name + "()" 
     mc = new $name; 
     trace(mc); 
    } 
    else if (type == "Bitmap") { 

    } 
} 

但它的錯誤與:

TypeError: Error #1007: Instantiation attempted on a non constructor 

是否有這樣做的正確方法是什麼?還是不可能以這種方式將影片剪輯添加到舞臺上?

回答

3

$nameString的一個實例。爲了實例化對象,您需要的是對Class的引用,您可以將類名稱傳遞給flash.utils.getDefinitionByName

試試這個:

var className:String = "as_" + name; 
var MyClass:Class = getDefinitionByName(className) as Class; 
mc = new MyClass(); 
+0

謝謝!這工作完美!而且我也是這樣做的,用於添加我假設的位圖? – Snakybo 2013-02-16 13:58:53

+0

是的,'getDefinitionByName'方法不管它是什麼類型,都會通過它的名稱返回類的引用。 – 2013-02-16 14:14:59

+0

明白了,謝謝! – Snakybo 2013-02-16 14:19:20

相關問題