我是Flash / Flex新手。 我想使用我在Flash中创建的组件扩展fl.core.UIComponent。我如何在Flex中使用它?我只是将其导出为swc,还是必须使用Flash Flex 3套件将其转换为UIMovieClip。这听起来不对。
我希望通过几个简单的步骤来描述这个过程。 谢谢 Sanoran
答案 0 :(得分:1)
您可以将文件发布为.swf并使用SWFLoader加载它,只需记住路径相对于您的运行/调试目录。
我的理解是swc文件通常是库文件,而不是可视组件,因为您希望在编译时(swc)而不是在运行时(swf)包含库。
var loader = new SWFLoader();
// set autoload to false just so we KNOW when it loads. Also prevents
// us from accidently loading it twice by calling load() later
loader.autoLoad = false;
loader.addEventListener(Event.INIT, function (nt:Event) {
// Remove event listener so can be garbage collected
event.currentTarget.removeEventListener(event.type, arguments.callee);
// note we can the loader, rather than
// loader.content
someIVisualElementContainer.addElement(loader);
});
// relative to bin-debug or bin-release
loader.source = "movie.swf";
loader.load();
答案 1 :(得分:0)
只需将.as文件导入您的Flex应用程序即可。使用rawChildren.addChild
代替普通addChild
将其添加到显示列表中,因为flex会覆盖默认的addChild
方法,只接受mx.core.UIComponent
及其派生类。
更新:您不能在flex中使用FLA,因此如果您的组件不仅仅是扩展fl.core.UIComponent的AS类,您应该将其导出到SWC或在运行时将相应的SWF加载到flex应用程序。