随笔分类 -  Flash

flash开发相关
摘要:假设场景中有一SimpleButton叫testBtn,执行下面操作: 1.鼠标移上testBtn, testBtn状态变为OVER 2.移除testBtn,removeChild(testBtn) 3.5秒后重新添加testBtn到场景此时,看见testBtn还是OVER状态。解决方法:1.... 阅读全文
posted @ 2015-01-27 13:49 飞翔的胖 阅读(335) 评论(0) 推荐(0)
摘要:A取名为TestA,编译后有TestA.swf. TestA里面有一个类叫SayHello(见下图)B取名为TestB,编译后有TestB.swf. TestB里面有一个跟TestA同样的类SayHello(包名和类名都一样)。稍微修改下TestB的SayHello(见下图)接下来用TestA加载T... 阅读全文
posted @ 2014-04-24 17:40 飞翔的胖 阅读(197) 评论(0) 推荐(0)
摘要:在Flash Builder的sdk里面有个很实用的工具ASDoc,它可以将你的AS3代码输出为html形式的API档案,就像Adobe官方的AS3 Reference一样。实现步骤如下:1.选中目标项目,点击ToolBar的External_Tools2.在设置面板中输入相关数据3.设置完毕后,点击Run。运行成功后,在项目根目录会生成ASDoc Tag Reference:http://help.adobe.com/en_US/flex/using/WSd0ded3821e0d52fe1e63e3d11c2f44bc36-7ff6.html 阅读全文
posted @ 2014-03-17 14:53 飞翔的胖 阅读(269) 评论(0) 推荐(0)
摘要:MouseEvent的mouseOver事件和rollOver事件是一个使用率很高的事件,它们都是对光标是否在可交互对象上进行判断,然而它们也存在一些区别。mouseOver的触发机制:当鼠标移到可交互对象实例上时调度,而且当鼠标进入显示对象容器的任何可交互对象的子对象区域时都会调度。rollOver的触发机制:当鼠标进入某个显示对象区域或者从其子级以外的对象进入任何其子级区域时,该显示对象将调度rollOver 事件。下面用一个例子来说明一下:可以看出,rollOver事件把A当整体来看,而不管A有多少子项。mouseOver事件把A和B当成不同的对象看待,所以当mouse从A进入B,A会先 阅读全文
posted @ 2013-11-13 10:46 飞翔的胖 阅读(420) 评论(0) 推荐(0)
摘要:原文:http://www.adobe.com/cn/devnet/flash/articles/optimizing-flash-performance.html 在本文中,您将找到使用 Flash Professional 创建的应用程序的性能优化战略。 优化过程包括编辑 FLA 项目文件,确保所发布的应用程序已实现的(或实际的)帧速率足以能流畅地回放动画。如果以前运行过 Flash 项目并且看到了经常停顿的动画,那么这就是您希望避免的行为。 如果希望复制一个有停顿的动画测试,可创建一个具有简单动画的项目并分配小于 10(如 5)的帧速率。 通过发布 SWF 文件来测试影片时,您会看... 阅读全文
posted @ 2013-10-30 09:31 飞翔的胖 阅读(337) 评论(0) 推荐(0)
摘要:在页面上显示SWF是要等到目标完全被加载完才会渲染出来。当加载的SWF文件比较大时,页面会处于空白状态,用户体验不好。较好的做法是做一个文件大小较小的loading动画来加载目标SWF,但对于单独的项目来说并不是最好的做法,因为这样无疑要维护多一个项目。看看下面这种做法:1.创建Preloading.fla,设置Export class in Frame:2(第二帧才运行Main class)2.在库中新建元件McLoading,Type:MovieClip,并勾上Export for ActionScript3.在库中新建元件McMain,Type:MovieClip,并勾上Expo... 阅读全文
posted @ 2013-09-11 16:07 飞翔的胖 阅读(282) 评论(0) 推荐(0)
摘要:原文:http://www.adobe.com/cn/devnet/scout/articles/accurate-profiling-with-scout.html开始使用 Scout 时,您会注意到只要开始加载任何 Flash 内容,就会打开一个新会话并开始收到数据。此数据称为遥测数据。基本上它就是 Flash Player 在执行内容时获取的一个度量数据流。为此,Scout 必须能够告诉 Flash Player 发送何种数据,Flash Player 必须能够连接到 Scout 并发送数据。Scout 如何告诉 Flash Player 发送数据?您的主目录中有一个名为.telemet 阅读全文
posted @ 2013-09-02 13:42 飞翔的胖 阅读(207) 评论(0) 推荐(0)
摘要:原文:http://www.adobe.com/cn/devnet/scout/articles/adobe-scout-getting-started.htmlAdobe Scout 是新一代 Flash 内容探查器,广泛适用于桌面 (Flash Player) 和移动设备 (Adobe AIR) 上运行的 Flash 内容。它能够让您洞悉过去无法了解的 Flash 内容行为。最重要的是,Scout 入门十分容易,不包含任何复杂的安装步骤!Scout 问世之前,您可以使用 Flash Builder 探查器调查 ActionScript 3 代码级的性能问题,但无法查看任何 Flash Pl 阅读全文
posted @ 2013-09-02 11:40 飞翔的胖 阅读(386) 评论(0) 推荐(0)
摘要:在开发过程,由于代码调试的需要,会使用很多trace来输出信息或者其他测试函数,所以在发布时屏蔽这些代码会比较麻烦。而FB允许自定义宏,可以轻易地解决此问题。1、添加自定义宏 宏定义的有固定的格式:-define=namespace::variable_name,value 2、获取宏的值trace(CONFIG::debug); ——–output:truetrace(CONFIG::release ); ——–output:false3、使用宏public class Test extends Sprite{ public function Test() { ... 阅读全文
posted @ 2013-08-21 13:44 飞翔的胖 阅读(129) 评论(0) 推荐(0)
摘要:在Mobile项目中使用Feathers的TextInput组件作为用户输入,当设置TextInput为setFocus()后,使得原本监听的KeyboardEvent失效,必须得点击场景中的其他元件,才能恢复监听。关于TextInput的一些讨论:http://forum.starling-framework.org/topic/listening-to-keyboardeventkey_down-on-a-textinput 为了能使KeyboardEvent正常工作,改用TextFieldTextEditor组件作为用户输入。 阅读全文
posted @ 2013-04-01 15:36 飞翔的胖 阅读(314) 评论(0) 推荐(0)
摘要:在单独的swf采用前篇所述的方法,确实可以另swf在网页最小化或失去焦点时保持原来的帧频。但是,如果在此swf加载另外的swf或者swc时,要确保要加载的swf或swc的帧频更主swf的帧频一致,才能的在睡眠模式中与主swf的帧频一致,否则不能起到突破的作用。 阅读全文
posted @ 2013-03-07 22:44 飞翔的胖 阅读(203) 评论(0) 推荐(0)
摘要:Adobe对睡眠模式的解释:http://help.adobe.com/zh_CN/as3/mobile/WS4bebcd66a74275c36cfb8137124318eebc6-8000.html#WS4bebcd66a74275c36cfb8137124318eebc6-7fff当页面最小化或者失去焦点时,flash player会进入睡眠模式,frameRate会下降到4fps以下(虽然Stage.frameRate属性将返回原始 SWF 文件的帧速率,但实际上不是),Timer和ENTER_FRAME事件将受到影响。可以通过Event.Activate和Event.Deactivat 阅读全文
posted @ 2013-03-05 14:50 飞翔的胖 阅读(710) 评论(0) 推荐(0)