本文和大家重点讨论一下Flex里加载Flex swf文件问题,其前提是Flashcs3和flex3.2开发,如果Flex调用由FLEX生成的FLASH里的FLEX函数根本不行。
Flex里加载Flex swf文件
前提:flashcs3和flex3.2开发(flex调用由FLEX生成的FLASH里的FLEX函数根本不行)
1、加载一个Flex swf
<mx:Flex swfLoadersource="1.Flex swf"/>
2、加载一个Flex swf并点击播放(播放:移动;视频插放;和Flex swf通信:如果是的话,比如你的Flex swf叫,test.Flex swf那么加载的时候去监听一下,在加载完成后,vart:test=event.targetastest;然后就可以调用里面的共有方法了。)
- <?xmlversionxmlversion="1.0"encoding="utf-8"?>
- <mx:Applicationxmlns:mxmx:Applicationxmlns:mx="http://www.adobe.com/2006/mxml"layout="absolute">
- <mx:Script>
- <![CDATA[
- privatevarMainMV:MovieClip;
- privatefunctionFlashComplete(event:Event):void
- {
- MainMV=MVFlex swf.contentasMovieClip;
- }
- privatefunctionMV_PlayLast():void{
- varCF:int=MainMV.currentFrame;//GetCurrentFrameNumber.
- if(CF!=1)
- {
- MainMV.gotoAndStop(CF-1);
- }
- }
- privatefunctionMV_PlayNext():void{
- varCF:int=MainMV.currentFrame;//GetCurrentFrameNumber.
- if(CF!=3)
- {
- MainMV.gotoAndStop(CF+1);
- }
- }
- ]]>
- </mx:Script>
- <!--WhenFlex swfFinishLoadingcompletethenCallFunctionFlashComplete-->
- <mx:Imagexmx:Imagex="16.5"y="24"source="FlashSrc\Main.Flex swf"complete="FlashComplete(event)"id="MVFlex swf"/>
- <mx:Buttonxmx:Buttonx="217"y="507"label="<<"id="BT_Last"click="MV_PlayLast()"/>
- <mx:Buttonxmx:Buttonx="299"y="507"label=">>"id="BT_Next"click="MV_PlayNext()"/>
- </mx:Application>
源码下载
3、移动Flex swf文件
4、跟随鼠标移动
资料:
Flex动态加载代码(swcFlex swf)
引言:相信大部分Flexer在编写一段时间的代码后,会去探究如何更加灵活动态的加载代码,本文就是解决这个问题,与大家共同学习进步。
注意:目前为止,Flex程序是不能动态加载swc文件的,它能动态加载Flex swf文件。
作用:动态加载代码使得主程序体积变小了,下载更快。可以根据需要灵活地加载不同的代码。可以划分多个相对独立的部分,耦合性小等。
stepbystep:
1.新建一个Flex工程project,编写代码,完成模块测试。
2.新建一个FlexLib工程projectSwc,src指向工程project。成功build。并将生成projectSwc.swc作为project的lib。
3.右键project-properties-FlexBuildPath-LibraryPath-projectSwc.swc-双击LinkType-选择RSL模式-生成projectSwc.Flex swf。
4.这个生成的projectSwc.Flex swf就可以动态调用了。条件:1.必须传入Class全路径。2接口预先定义,如invoke(object:Object)。
5.调用过程类似于Java中的反射,用Loader加载Flex swf,用getDefinition加载类,最后调用invoke。完成动态调用。
总结:
在stepbystep过程中也许会有些许细节的出入,希望大家可以自己摸索,当然有问题可以提出来一起交流。在这里只是提供一个相对清晰的思路,旨在授之以渔。
【编辑推荐】
- 解析Flex4的十大变化
- Flex3到Flex4的转变新特性值得关注
- 解析对AdobeFlex的十大误解
- FlexBuilder3.0与Eclipse3.4的完美结合
- 学习Flex时必须要知道的10件事情