|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
可以为受众提供跨计算机、智能手机、平板电脑和电视平台的令人痴迷的一致性体验。
pouoluo中心提醒:利用FlashProfessional和FlashDevelop举行AS3开辟。
创立FlashDevelop项目:
·在FlashDevelop中创立AS3FlashIDE项目。
·请注重,你能够在现有的FLA文件四周创立这个项目,它不会增加任何文件(而且FlashDevelop永久不会删除现有的文件)。
构造项目
·倡议将源代码和公布元素分别开来
·以是在项目中创立两个文件夹:“bin”(或“deploy”)和“src”(即源代码)。
·翻开项目属性
·选择Classpaths标签
·在classpath中增加“src”文件夹路径(经由过程点击来)
坚持类和FLA文件在“src”文件夹中,公布的SWF在“bin”(或”deploy”)文件夹中。
提醒:为AdobeFlashProfessional“fl”类启用代码完乐成能:
·翻开项目属性
·选择CompilerOptions标签
·在IntrinsicLibraries列表中增加LibraryAS3rameworksFlashIDE
创立AdobeFlashProfessional文档(既“FLA”文档)
·启动AdobeFlashProfessional(能够在FlashDevelop中按F6来启动)
·新建一个AS3Flash文档
·在项目标“src”文件夹中保留FLA
·翻开公布设置(格局化标签)并把公布方针改成“../bin/xxx.swf”(xxx对应于你的FLA的文件名)那末它将会在符合的目次中天生。
设置FLA
·在AdobeFlashProfessional中翻开FLA文档
·翻开文档的ActionScript设置
·作废选择“主动声明舞台实例”
我们改动的这些设置长短常主要的:
假如我们要为舞台上的元素完成代码这些是必需的。这意味着我们要在我们的类中手动声明舞台上的元素。请注重,你必需声明一切的元素都有一个实例称号。
界说文档类和标记类
文档类:
·文档类是与主工夫轴相干联的类(既主类)
·在ActionScript设置或属性面板(点击Flash舞台背景来失掉文档属性)中界说文档类(比方:“SampleProjectMain”)
细心地选择称号来创立一些库元件
·倡议的做法是定名元件与他们的类不异(如:MySymbol)
·假如一个元件包括其他元件,这些子元件名应是其父元件类名的组合(如:MySymbol_background)这让人更简单了解元件之间的干系。
提醒:元件和类之间的差别
从手艺上讲,在AS3中的每一个元件都主动有一个相干的类(历来没有间接操纵元件),但默许情形下,这些类具有奇异的名字,因而,我们必需给它们一个流动的类名,使得它们可以导进到我们的代码中。
为ActionScript导出元件:
·在库面板中右击元件,选择“属性…”对话框
·选中“为ActionScript导出”并填进类名(如:MySymbol)
·不改动基类(如:flash.display.MovieClip)
提醒:Flash告之类不存在
当你联系关系文档或元件到一个不存在的类时,Flash将告诫类不存在,它将主动天生一个默许类。这不是成绩,你能够随时随地创立一个不异称号的自界说类。
编写类
如今是时分回到FlashDevelop下去并创立响应的类:
·在项目标目次树当选择你要创立类的地位
·然后右键:Add>NewClass…
·键进类名(不必输出包,它会在天生的类中主动增加)
提醒:@authorDefaultUser是甚么?
初次创立一个类你大概在类正文中看到这个:- /***...*@authorDefaultUser(Tools->CustomArguments...)*/
复制代码 CustomArguments是你能够在FlashDevelop中设置并在模板中利用的使用程序变量:
·在主菜单中,选择Tools>CustomArguments
·把DefaultUser的值交换为你的名字
PS:实验老是在这第一个正文块中增加一个一样平常类“脚色”的形貌(在下面“…”的中央增加)
例如说,我们已把元件导出为MySymbol类了:- package{importflash.display.MovieClip;publicclassMySymbolextendsMovieClip{publicfunctionMySymbol(){trace("ImaMySymbolinstancecalled",name);}}}
复制代码 提醒:关于文档类和元件类:
·类必需声明为public
·一般你的类将扩大flash.display.MovieClip
·但你能够选择扩大flash.display.Sprite(元件的工夫轴将被禁用)
·或扩大别的恣意的最少扩大了flash.display.Sprite的用户类
PS:固然,这其实不合用于图象,它终极必需扩大flash.display.BitmapData
在舞台上声明元件
正如后面倡议的,假如你在FLA的ActionScript设置作废选择“主动声明舞台实例”的话,不管哪一帧显现此元件,我们都必需明白地在父容器类中声明这个元件(假如它有一个自界说类的话)。
比方,在主工夫轴上安排一个MySymbol实例,定名它为“mySymbol”。我们必需在文档类中声明它:- package{importflash.display.MovieClip;publicclassSampleProjectMainextendsMovieClip{publicvarmySymbol:MovieClip;//静态
- 范例
- //publicvarmySymbol:MySymbol;//强范例
- publicfunctionSampleProjectMain(){trace("Imthedocument");if(mySymbol)mySymbol.x+=100;}}}
复制代码 提醒:关于元件可见性
元件必需声明为public,这是在工夫轴上强迫元件实例。时代任何别的声明(internal,protected,private)都将失利。
增加“工夫轴代码”
固然有些人以为这是一种欠好的做法(addFrameScript()能够用来制止它),但我以为在工夫轴中增加一点代码,这是完整能够的,由于它会使你的类更轻量。
比方,假如元件(或主工夫轴)是一个多帧动画,而且你想晓得甚么时分已抵达了一个特定的帧:
·增加“举措”层
·在工夫轴上创立一个空缺关头帧(比方最新的)
·在帧举措中写进:
lastFrame();
·如今在元件类(或文档类,假如你在主工夫轴上的话)声明lastFrame()办法:- package{importflash.display.MovieClip;publicclassSampleProjectMainextendsMovieClip{publicvarmySymbol:MovieClip;//静态
- 范例
- //publicvarmySymbol:MySymbol;//强范例
- publicfunctionSampleProjectMain(){trace("Imthedocument");}publicfunctionlastFrame():void{trace("wereachedthelastframe");if(mySymbol)mySymbol.x+=100;}}}
复制代码 提醒:AS3不像AS1/AS2一样宽大
要注重常常反省你利用的元件不为空:- //是AS3,假如
- mySymbol不决
- 义mySymbol.x+=100;//抛出非常
- if(mySymbol)mySymbol.x+=100;//准确
复制代码 下载示例项目
本教程可作为一个FlashDevelop项目示例
·下载示例项目
PS:在示例项目中,类是“打包的”。包是一个单位,是你会萃一般项目或一般脚色中类的中央。
Flash可以包含简单的动画、视频内容、复杂演示文稿和应用程序以及介于它们之间的任何内容。 |
|