Flex模块化详尽解读

在学习Flex的过程中,你可能会遇到Flex模块化方面的问题,这里和大家分享一下,Flex模块化可创建Flex模块化应用程序,是提高Flex框架性能的重要方面,提供更多能力控制下载时间和文件大小。

Flex模块化学习总结

关于这篇文章:写这篇文章的目的是总结一下我在Flex模块化开发时所遇到的问题由浅到浅地介绍,并不是什么特别的东西,只是老了,怕自己不记得就记下来,为什么要公开,是想看能不能帮助一些人,那样就心安啦,写的不好大家见谅,之所以分三篇没什么特别的意义,只是在blog放不下,再次请大家见谅。

1:为什么要Flex模块化

Flex模块化提供了分离应用程序代码到不同的swf文件上以便减少下载时间和文件大小。使用Modules的好处是:

1.主应用程序开始时不需马上下载modules。应用程序会根据需求载入和卸载modules。

2.由于每个modules独立于其他应用程序modules,当需要改变一个modules时,你只需要重编译这个modules而不是整个应用程序。

Flex模块化可创建Flex模块化应用程序是提高Flex框架性能的重要方面,提供更多能力控制下载时间和文件大小,使用modules,你可以根据哪些可被独立载入,哪些可被其他程序使用而分离应用程序代码,

2:如何Flex模块化

2.1创建模块

基于mxml的模块,在你的工程右键->new->mxmlModule

 
  1. <?xmlversionxmlversion="1.0"encoding="utf-8"?> 
  2.  
  3. <mx:Modulexmlns:mxmx:Modulexmlns:mx="http://www.adobe.com/2006/mxml" 
  4.  
  5. layout="absolute"width="400"height="300"> 
  6.  
  7. </mx:Module> 
  8.  

◆基于as的模块

 
  1. package  
  2.  
  3. {  
  4. importmx.modules.Module;  
  5.  
  6. publicclassGeneralextendsModule  
  7.  
  8. {  
  9. publicfunctionGeneral()  
  10.  
  11. {  
  12. super();  
  13.  
  14. }  
  15. }  
  16. }  
  17.  

2.2Flex模块化中加载模块

2.2.1使用ModuleLoader加载

 
  1. <mx:ModuleLoaderurlmx:ModuleLoaderurl="ContactList.swf"/> 

2.2.2使用ModuleManager加载

 
  1. PrivatefunctioncreationHandler():void  
  2.  
  3. {  
  4. _moduleInfo=  
  5.  
  6. ModuleManager.getModule('ContactList.swf'  
  7.  
  8. );  
  9. _moduleInfo.addEventListener(ModuleEvent.READY,  
  10.  
  11. moduleLoadHandler);  
  12.  
  13. _moduleInfo.load();  
  14. }  
  15.  
  16. PrivatefunctionmoduleLoadHandler(evt:ModuleEvent):void  
  17.  
  18. {  
  19.  
  20. canvas.addChild(_moduleInfo.factory.create()as  
  21.  
  22. DisplayObject);  
  23.  
  24. }  
  25.  

2.2.3创建弹出模块

 
  1. Vargeneral:ModuleLoader  
  2.  
  3. general=ModuleLoader(mx.managers.PopUpManager.createPopUp(this,ModuleLoader));  
  4.  
  5. general.url="General.swf";  
  6.  

注意:在创建弹出模块时,有时会产生:无法将mx.managers::PopUpManagerImpl@bba9941转换为mx.managers.IPopUpManager这种错误,这个时候我们需要在主程序里引入

 
  1. importmx.managers.IPopUpManager;  
  2.  
  3. privatevaripopUp:IPopUpManager  
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值