getDefinitionByName with swc

一般 Flash 程式開發時, 取資源的方式有兩種:
  • .swf
  • .swc
.swf 擋屬於 Runtime 時從外部載進來取用的方式, 通常會使用 Loader 來作處理.

.swc 擋則是 Compiler 時就會一起包進來, 要取用內部元件通常就直接 new 出來就可以:
var component:CLASS_NAME = new CLASS_NAME();
如果想要動態取得元件的話會碰到一些問題, 一般來講會用 getDefinitionByName(CLASS_NAME:String) 這個 method:

不過編譯完執行後會碰到錯誤, 解決方式如下:
Project > Properties

Flex Compiler > 加入下面參數
-include-libraries=YOUR_ABSOLUTE_SWC_PATH.swc

留言

這個網誌中的熱門文章

COSCUP 2012

Hahow 為什麼沒有 iOS App

swfobject - 網頁輕鬆嵌入Flash