Flash与Flex配合开发,flash导出swc到flex
Flash与Flex配合开发,flash导出swc到flex Flash与Flex常配合起来开发游戏,通常方法有两种: 这里主要说明第1种,这是一种很多程序员都使用的方式。Flash创建元件资源给FB,还有两种方式: 第一种方式已经有很多介绍,这里不多说。笔者偏向第二种方式。下面说明实现步骤: 1. 在Flash CS5中创建FLA文件,创建一个影片剪辑,起一个英文名字,如Fish,在“高级”中勾选”Export for ActionScript”。其它默认。 package { //默认导入的是flash.display.MovieClip import mx.flash.UIMovieClip; //继承修改为UIMovieClip,这样可以在FB中直接当作组件使用 public class Fish extends UIMovieClip { //停止在MovieClip的第一帧,在实例化时执行 public function Fish() { // constructor code this.stop(); } //此函数可被FB调用 public function sayHello():String{ return "Hello,I am a fish"; } } } 5. 保存Flash文件,执行Flash的发布。此时会在FLA的同目录生成一个与FLA文件同名的SWC文件,如FlashSymbol.swc。 6. 创建Flex项目,拷贝FlashSymbol.swc到项目的libs目录,或者设置项目库文件添加这个SWC文件。在Flex主文件mxml中写下:
<?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()" xmlns:local="*" > <fx:Script> <![CDATA[ import mx.core.UIComponent; private var fish:Fish; private function init():void{ fish = new Fish(); this.addElement(fish); fish.x = fish.y = 50; //调用fish里的方法 trace(fish.sayHello()); } private function changeColor(event:MouseEvent):void{ if(changeBtn.label == "蓝色"){ //控制鱼元件的帧跳转 fish.gotoAndStop(10); changeBtn.label = "黄色"; }else{ fish.gotoAndStop(1); changeBtn.label = "蓝色"; } } ]]> </fx:Script> <s:Button label="蓝色" id="changeBtn" click="changeColor(event);" x="264" y="10"/> </s:Application> 注意: 1) 在Application标签中添加:xmlns:local=”*” 2) 如果要导出的影片剪辑中有形状动画,导出swc后到flex出错,暂时不知道原因。如果你找到了问题所在,还请留言解惑。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |