Flex SWFLoader加载SWF和元件,控制SWF
来源:互联网 发布:lol赌博软件 编辑:程序博客网 时间:2024/05/16 12:34
Flex SWFLoader加载SWF和元件,控制SWF
SWFLoader加载外部swf是一个很好的方法,在进行Flex游戏开发的时候,我们通常会需要很多Flash提供的游戏角色,这些角色可以每个都是一个单独的swf,也可以是存在于一个swf文件中的各个元件。两种方法各有优劣:
1. 单独的swf,每个角色独立性很强,可以在需要的时候才加载。未来修改角色也不会影响到其它角色。但是会有很多的swf需要管理。2. 每个角色是一个元件,存在于一个swf中,这种方法比较容易管理资源,比较干净。但是修改一个角色都需要重新编译swf,可能会误操作影响其它的元件。而且一次加载所有角色,可能会加载许多不必要的元件,浪费带宽。
两种方法怎么选择,根据项目读者根据以下几个问题考虑:
1. 你的所有元件相互之间是否又很多公用元件?如果是的话,可以考虑放到一个swf中,因为这样会降低所有元件的文件量。
2. 你的所有元件是否都继承同一些类,实现同一些接口,调用同一些类?如果是的话,可以考虑放到一个swf中,这样比较容易管理类包,而且降低swf的文件量,因为共有的类只编译一次。
3. 你的所有元件是否完全独立,没有任何关系?如果是的话,你可以考虑每个角色独立的swf。
具体实现代码如下:
<?xml version="1.0" encoding="utf-8"?><s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600" creationComplete="init()" ><fx:Declarations><!-- Place non-visual elements (e.g., services, value objects) here --></fx:Declarations><fx:Script><![CDATA[import mx.controls.SWFLoader;import mx.core.UIComponent; private var swfLoader:SWFLoader = new SWFLoader();private function init():void{swfLoader.addEventListener(Event.COMPLETE,swfLoadComplete);swfLoader.load("assets/fishmomo.swf");}private function swfLoadComplete(e:Event):void{/** * 将整个swf都加载到flex舞台上 * 此方法将每个flex要用的资源做成单独的swf,需要时才加载进来 */ addElement(swfLoader);var swf:MovieClip = swfLoader.content as MovieClip;//fish 是 swf主舞台上的一个鱼对象,属性命名为fish//调用舞台上fish元件的say方法swf.fish.say("Load a swf"); /** * 此方法可以把所有的flex要用的资源放到一个swf中 * 把需要在flex中使用的元件链接到一个类,并将此元件拖到flash舞台 * 通过类名,随意显示其中一个元件到flex舞台 */ var FishSymbol:Object = swfLoader.content.loaderInfo.applicationDomain.getDefinition("Fish");var f:MovieClip = new FishSymbol() as MovieClip;//调用元件的say方法f.say("Load a symbol within a swf");var ui:UIComponent = new UIComponent();ui.addChild(f);addElement(ui);}]]></fx:Script></s:Application>
- Flex SWFLoader加载SWF和元件,控制SWF
- flex SWFLoader 访问 SWF 交互 的方法
- Flex SWFLoader 自動卸載外部 SWF 動畫
- 加载swf并获取swf中的元件
- SWFLoader加载swf,并且调用其方法
- Flex控制外部加载的swf文件[外部swf文件flex版]
- flex swfobject 加载远程swf
- flex加载外部的swf,取得swf内容的实际宽度和高度
- Flex动态加载swc和swf中的class
- Flex动态加载swc和swf中的class
- Flex动态加载swc和swf中的class
- flex和嵌入的swf
- flex 和swf互相调用
- FB调用swf元件
- a.swf加载b.swf, 在b.swf中使用a.swf的方法和属性。
- a.swf加载b.swf, 在b.swf中使用a.swf的方法和属性。
- 加载SWF
- Flex加载swf的几个要点
- hightcharts
- chtmlview中设定IE内核版本
- AS3中深度管理的实现
- EJB 有状态会话bean无状态会话bean详解
- SQL SERVER数据库恢复后,如何修改登陆帐号name和sid
- Flex SWFLoader加载SWF和元件,控制SWF
- 从Alarm看Android上层UI到内核代码的流程分析
- Unix编程艺术之模块性
- Flex加载swf的几种方法
- poj 3321
- Flash与Flex配合开发,flash导出swc到flex
- Beginning a WPF/MVVM application: Navigating between views
- windows性能检测器参数项详解
- Iphone4 越狱