嗨,我在flex中遇到了swfLoader问题,当我在单击方法中关闭下面的代码时,我可以轻松地将许多swf添加到主应用程序中。
<mx:VBox id="content" width="100%" height="100%" ></mx:VBox>
public function doIT():void
{
var swfLoader1:SWFLoader = new SWFLoader;
swfLoader1.source = "DayProfileElement.swf";
swfLoader1.percentHeight = 100;
swfLoader1.percentWidth = 100;
swfLoader1.name = "a";
swfLoader1.id = "b";
var panel1:Panel = new Panel;
panel1.percentHeight = 100;
panel1.percentWidth = 100 / 4;
panel1.name ="c";
panel1.id = "d";
panel1.addChild(swfLoader1);
content.addChild(panel1); }
当我以每秒一次的速度按下按钮时,它会工作,但是当我非常快地按下按钮时,我会有以下错误:
TypeError: Error #1034: Type Coercion failed: cannot convert mx.core::ClassFactory@a93a671 to mx.core.IFactory.
at mx.charts.series::AreaSeries/get legendData()[C:\work\flex\dmv_automation\projects\datavisualisation\src\mx\charts\series\AreaSeries.as:327]
at mx.charts.chartClasses::ChartBase/get legendData()[C:\work\flex\dmv_automation\projects\datavisualisation\src\mx\charts\chartClasses\ChartBase.as:1161]
at mx.charts::Legend/populateFromArray()[C:\work\flex\dmv_automation\projects\datavisualisation\src\mx\charts\Legend.as:666]
at mx.charts::Legend/commitProperties()[C:\work\flex\dmv_automation\projects\datavisualisation\src\mx\charts\Legend.as:449]
at mx.core::UIComponent/validateProperties()[C:\autobuild\3.2.0\frameworks\projects\framework\src\mx\core\UIComponent.as:5807]
at mx.managers::LayoutManager/validateProperties()[C:\autobuild\3.2.0\frameworks\projects\framework\src\mx\managers\LayoutManager.as:539]
at mx.managers::LayoutManager/doPhasedInstantiation()[C:\autobuild\3.2.0\frameworks\projects\framework\src\mx\managers\LayoutManager.as:659]
at Function/http://adobe.com/AS3/2006/builtin::apply()
at mx.core::UIComponent/callLaterDispatcher2()[C:\autobuild\3.2.0\frameworks\projects\framework\src\mx\core\UIComponent.as:8628]
at mx.core::UIComponent/callLaterDispatcher()[C:\autobuild\3.2.0\frameworks\projects\framework\src\mx\core\UIComponent.as:8568]当我结束在循环中添加那些swfs时,我遇到了同样的错误,看起来子应用程序无法访问另一个子应用程序实例化的某些对象,那么我能做什么呢?
发布于 2011-03-30 18:27:57
TypeError:错误#1034:类型强制失败:无法将mx.core::ClassFactory@a93a671转换为mx.core.IFactory。
99%的情况下,这样的错误是由加载程序使用的类的不同版本编译的SWF造成的,或者您没有将它们加载到同一个应用程序域中。
再看一眼位于SWFLoader的“命名空间选项”,我打赌您会找到答案的。我不认为这里的任何人都能用你提供的信息给你一个确切的答案。
https://stackoverflow.com/questions/3548915
复制相似问题