Flex模塊化的目的及其步驟
本文和大家重點討論一下Flex模塊化的概念,主要包括Flex模塊化的目的和如何進(jìn)行Flex模塊化兩大部分內(nèi)容,相信本文介紹一定會讓你有所收獲。
Flex模塊化學(xué)習(xí)總結(jié)
1.為什么要Flex模塊化
Flex模塊化提供了分離應(yīng)用程序代碼到不同的swf文件上以便減少下載時間和文件大小。使用Modules的好處是:
1.主應(yīng)用程序開始時不需馬上下載modules。應(yīng)用程序會根據(jù)需求載入和卸載modules。
2.由于每個modules獨立于其他應(yīng)用程序modules,當(dāng)需要改變一個modules時,你只需要重編譯這個modules而不是整個應(yīng)用程序。
Flex模塊化可創(chuàng)建Flex模塊化應(yīng)用程序是提高Flex框架性能的重要方面,提供更多能力控制下載時間和文件大小,使用modules,你可以根據(jù)哪些可被獨立載入,哪些可被其他程序使用而分離應(yīng)用程序代碼,
2.如何Flex模塊化
2.1創(chuàng)建模塊
基于mxml的模塊,在你的工程右鍵->new->mxmlModule
- <?xmlversionxmlversion="1.0"encoding="utf-8"?>
- <mx:Modulexmlns:mxmx:Modulexmlns:mx="http://www.adobe.com/2006/mxml"
- layout="absolute"width="400"height="300">
- </mx:Module>
基于as的模塊
- package
- {
- importmx.modules.Module;
- publicclassGeneralextendsModule
- {
- publicfunctionGeneral()
- {
- super();
- }
- }
- }
2.2Flex模塊化中加載模塊
2.2.1使用ModuleLoader加載;
- <mx:ModuleLoaderurlmx:ModuleLoaderurl="ContactList.swf"/>
2.2.2使用ModuleManager加載
- PrivatefunctioncreationHandler():void
- {
- _moduleInfo=
- ModuleManager.getModule('ContactList.swf'
- );
- _moduleInfo.addEventListener(ModuleEvent.READY,
- moduleLoadHandler);
- _moduleInfo.load();
- }
- PrivatefunctionmoduleLoadHandler(evt:ModuleEvent):void
- {
- canvas.addChild(_moduleInfo.factory.create()as
- DisplayObject);
- }
2.2.3創(chuàng)建彈出模塊
- Vargeneral:ModuleLoader
- general=ModuleLoader(mx.managers.PopUpManager.
- createPopUp(this,ModuleLoader));
- general.url="General.swf";
注意:在創(chuàng)建彈出模塊時,有時會產(chǎn)生:無法將mx.managers::PopUpManagerImpl@bba9941轉(zhuǎn)換為mx.managers.IPopUpManager這種錯誤,這個時候我們需要在主程序里引入
- importmx.managers.IPopUpManager;
- privatevaripopUp:IPopUpManager
【編輯推薦】
- Flex模塊化應(yīng)用程序開發(fā)
- Flex模塊化開發(fā)優(yōu)勢及技巧解析
- 全面認(rèn)識Flex應(yīng)用程序的六大元素
- 揭開Flex正則表達(dá)式的神秘面紗
- Flex數(shù)據(jù)綁定及其使用頻繁的幾種情況