天天看點

flex多module切換問題

錯誤描述:

typeError: Error #1034: 強制轉換類型失敗:無法将 mx.graphics::[email protected] 轉換為 mx.graphics.IStroke。

 at mx.charts::AxisRenderer/measure()[C:\Work\flex\dmv_automation\projects\datavisualisation\src\mx\charts\AxisRenderer.as:1091]

 at mx.core::UIComponent/measureSizes()[E:\dev\3.0.x\frameworks\projects\framework\src\mx\core\UIComponent.as:5819]

 at mx.core::UIComponent/validateSize()[E:\dev\3.0.x\frameworks\projects\framework\src\mx\core\UIComponent.as:5765]

 at mx.managers::LayoutManager/validateSize()[E:\dev\3.0.x\frameworks\projects\framework\src\mx\managers\LayoutManager.as:559]

 at mx.managers::LayoutManager/doPhasedInstantiation()[E:\dev\3.0.x\frameworks\projects\framework\src\mx\managers\LayoutManager.as:648]

 at Function/http://adobe.com/AS3/2006/builtin::apply()

 at mx.core::UIComponent/callLaterDispatcher2()[E:\dev\3.0.x\frameworks\projects\framework\src\mx\core\UIComponent.as:8460]

 at mx.core::UIComponent/callLaterDispatcher()[E:\dev\3.0.x\frameworks\projects\framework\src\mx\core\UIComponent.as:8403]

錯誤說明:當我在多module切換的時候就抱這個錯,特别要說明的是在切換時的連個module顯示的圖形,一個是自己畫的,一個用的flex自帶的,自己畫的中裡面用的是IStroke,但是自帶的圖形是Stroke,是以切換的時候就抱錯,

解決方法:

如果你是用的是IModuleInfo的話的load的時候添加ApplicationDomain.currentDomain參數就可以了,

如:info.load(ApplicationDomain.currentDomain);

如果你用的是loadModule的話,則這樣

aa.applicationDomain=ApplicationDomain.currentDomain;

    aa.loadModule();