随笔分类 - 12.Flex/Flash/AS3.0

摘要:原文:http://uh.9ria.com/space.php?uid=68483&do=blog&id=5786 在很多论坛上看到了有人抱怨Flash CS5中,代码提示(Code hint)有时不显示的问题,这个问题可能有很多原因,我整理了几个解决办法,有可能可以帮助到你~1. 关于代码提示的快捷键,默认是Ctrl+Spacebar,但是在大部分中文用户的机器上,这是切换输入法... 阅读全文
posted @ 2010-08-26 19:28 菩提树下的杨过 阅读(1533) 评论(1) 推荐(0) 编辑
摘要:单纯从客户端上来看,FluorineFx的RSO跟FMS中的RSO几乎没什么不同(参见Flash/Flex学习笔记(15):FMS 3.5之远程共享对象(Remote Shared Object) ),只不过FMS是Adobe的收费产品,FluorineFx是用于.Net平台的开源免费产品.服务端代码:1、为了防止客户端随意连接或创建任何属性的RSO,服务端可以定义一个用于安全处理的cs文件2、创... 阅读全文
posted @ 2010-08-26 19:13 菩提树下的杨过 阅读(1114) 评论(0) 推荐(0) 编辑
摘要:AMFAMF(是Action Message Format的缩写)是在flash和flex中与远程服务端交换数据的一种格式.它是二进制格式,Flash应用与服务端或数据库通过RPC交换数据时,通常都采用这种格式。AMF 1 诞生于Flash Player6,发展到现在已经变成了了AMF3RTMPRTMP是Real-Time Messaging Protocol(实时消息传送协议)的缩写,它是Ado... 阅读全文
posted @ 2010-08-26 14:28 菩提树下的杨过 阅读(6649) 评论(0) 推荐(3) 编辑
摘要:FluorineFx自带的示例都不错,就是有点不简洁,下面的代码基本上已经最简版了(环境vs2010)1、先创建一个Web Application,然后添加FluorineFx以及FluorineFx.ServiceBrowser的引用这二个程序集的默认位置在:C:\Program Files (x86)\FluorineFx\Bin\net\3.5\FluorineFx.dllC:\Progra... 阅读全文
posted @ 2010-08-24 17:56 菩提树下的杨过 阅读(2101) 评论(3) 推荐(0) 编辑
摘要:上一篇 puremvc框架之Command里,已经学习了如何利用Command来解耦View层与业务逻辑的依赖,但是仍然有二个问题:1、ButtonMediator中发送消息时,仍然采用硬编码的方式,将消息内容写死在代码中:这显然不是一个好的设计,不够灵活2、我们一直在说puremvc是一个mvc框架,至今为止 controller(即Command)、view(即Mediator)都已经出现过了... 阅读全文
posted @ 2010-08-01 10:18 菩提树下的杨过 阅读(4335) 评论(0) 推荐(0) 编辑
摘要:在前一篇 puremvc框架之hello world!里,已经对这个框架有了一个大概的认识,不过在消息的处理上,有一个不太适合的地方:为了完成响应消息,TextMediator亲自去监听自己感兴趣的消息类型,然后亲自来处理。要知道:Mediator属于View层(即:MVC中的V),它最好是什么也不干,仅仅与界面保持联系即可,对于如何响应消息这类粗活,应该交由Controller层(即MVC中的C... 阅读全文
posted @ 2010-07-31 21:04 菩提树下的杨过 阅读(3568) 评论(0) 推荐(0) 编辑
摘要:是的,没错,就是用vs2010来开发flex/flash !有图有真相:1、在vs2010中创建as3/air/flex项目2、ide环境中的as代码自动提示对于不想安装flash cs/flash builder/flash developer,又想体验一下actionscript编程的.net程序员来说,这无疑是一个好消息!言归正传:1、先到http://opensource.adobe.co... 阅读全文
posted @ 2010-07-29 10:56 菩提树下的杨过 阅读(11032) 评论(38) 推荐(26) 编辑
摘要:puremvc是一个可应用于多种语言、多种平台的mvc框架。根据官网上的描述,现在已经支持下列语言:官方也推出了最佳实践的中文文档,当然,园子里也有兄弟说它烂的 :)跟asp.net mvc框架有所不同,在asp.net mvc中,一个http请求过来,controller会自动去取得数据,最终转化为model,然后选取一个view进行呈现,同时把model传到view中,一切还算比较简单。然而p... 阅读全文
posted @ 2010-07-27 17:11 菩提树下的杨过 阅读(12404) 评论(5) 推荐(4) 编辑
摘要:单件(singleton)模式在c#中是最容易实现的模式,其主要用意就在于限制使用者用new来创建多个实例。但在as3中,构造函数必须是public的(语法本身要求的),而且也不能在构造函数中抛出异常(编译可通过,但是逻辑行不通),因为这样相当于把创建实例的路子完全切断了,一个实例也得不到!错误代码:怎样即能创建实例,又阻止使用者调用构造函数呢?这里要用到as3的一个特性:默认情况下,一个as文件... 阅读全文
posted @ 2010-07-27 14:36 菩提树下的杨过 阅读(2088) 评论(0) 推荐(0) 编辑
摘要:Bēniaǒk兄弟的Flex与.NET互操作(六):Flex和.NET协同开发利器FluorineFx是基于vs2008 + flex builder3的,不知道什么原因,我在vs2010 + flash builder4 上试了几次,总是不成功(也许晚上应该自我检讨下人品鸟),于是有了这一篇东东,算是对 vs2010/flash builder4环境下的一个补充吧.net的服务端依照参照silv... 阅读全文
posted @ 2010-07-26 15:20 菩提树下的杨过 阅读(2156) 评论(0) 推荐(1) 编辑
摘要:前几天写过一篇"flash开发中如何实现界面代码分离",评论中小-G同学给出了更好的建议:swc ,今天试用了一下,果然比较embed swf来得更爽!同时对小-G同学表示感谢!就拿视频播放器的控制来说吧:通常我们会把一些常规的控制按钮,利用Flash CS的IDE界面做好,放到库中如果按embed swf的方法,需要手动用代码创建每种按钮的实例,然后一个个去控制位置,然后addChild;其实考... 阅读全文
posted @ 2010-07-26 14:34 菩提树下的杨过 阅读(6213) 评论(4) 推荐(0) 编辑
摘要:在前一部分的最后,我们给出了一个寻路的示例,在大多数情况下,运行还算良好,但是有一个小问题,如下图:很明显,障碍物已经把路堵死了,但是小球仍然穿过对角线跑了出来!问题在哪里:我们先回顾一下AStar.as中用于判断的if语句在这个判断中,并没有规定说不允许走对象线。来看看如何修正:在以node为中心考查四周节点时,如果遇到水平和垂直方向都是障碍物时,既使对角节点是可穿越的普通节点,也不能通过。所以... 阅读全文
posted @ 2010-07-24 12:43 菩提树下的杨过 阅读(7062) 评论(2) 推荐(3) 编辑
摘要:上一部分提到了节点(Node),代价(Cost),估价公式等基本概念,有了这些知识铺垫 就可以正式开启寻路之旅了!如上图,这是一个5行8列的网格,黄色节点为起点,红色节点为终点,黑色节点为障碍物(节点)。寻路过程可以这样考虑:1、先以起点为中心,向周边扩张一圈,同时计算出周边节点(最多有8个)的单步代价g(即从中心点移动到相邻格子的代价:水平或垂直为1,对角为1.4);然后再计算周边每个节点到终点的估算代价h(利用上一部分最后讲到的估算公式),从而得出周围每个节点的总代价 f = g+h2、同时准备二个数组,一个称为开放列表(open),一个称为封闭列表(closed),把周边节点放入open 阅读全文
posted @ 2010-07-24 09:18 菩提树下的杨过 阅读(6739) 评论(7) 推荐(1) 编辑
摘要:一提到“A*算法”,可能很多人都有"如雷贯耳"的感觉。用最白话的语言来讲:把游戏中的某个角色放在一个网格环境中,并给定一个目标点和一些障碍物,如何让角色快速“绕过障碍物”找出通往目标点的路径。(如下图)在寻路过程中,角色总是不停从一个格子移动到另一个相邻的格子,如果单纯从距离上讲,移动到与自身斜对角的格子走的距离要长一些,而移动到与自身水平或垂直方面平行的格子,则要近一些。为了描述这种区别,先引入二个概念:节点(Node):每个格子都可以称为节点。代价(Cost):描述角色移动到某个节点时所走的距离(或难易程度)。如上图,如果每水平或垂直方向移动相邻一个节点所花的代价记为1 阅读全文
posted @ 2010-07-22 09:24 菩提树下的杨过 阅读(10128) 评论(7) 推荐(3) 编辑
摘要:Function类在as3中是直接从Object继承下来的,通常开发者定义的每一个function,均可以认为是Function类的一个实例。如果硬要跟c#做比较,Function类跟Delegate(委托)有几分相似,均可以达到通过该类型的实例来调用不同方法的目的。这段c#代码中,委托_delegateType的实例d,最终调用了具有同样方法签名的方法helloWorld.来看下as3是怎么做的... 阅读全文
posted @ 2010-07-21 11:41 菩提树下的杨过 阅读(10745) 评论(2) 推荐(1) 编辑
摘要:因工作需要,又做了一个播放器(走了一段弯路:刚开始在flash里做,后来不知道怎么搞的,flash cs5突然代码提示功能没了,后换成Flash Builder把主要代码复制进来重新来过,加上视频文件转换为flv,前后用了近两天时间,汗)依然是基于xml数据源,动画的移动处理主要依赖于TweenLite,没有使用系统的组件,开发环境win7 + flash builder,最终大小29k,另外也发... 阅读全文
posted @ 2010-07-20 15:15 菩提树下的杨过 阅读(2342) 评论(4) 推荐(0) 编辑
摘要:比系统自带的组件体积要小很多,而且支持进度条显示(在做播放器时,显示缓冲进度很有用哦),另外也支持三角形的音量调整显示使用示例:SimpleSlider.as 阅读全文
posted @ 2010-07-18 17:08 菩提树下的杨过 阅读(1604) 评论(0) 推荐(0) 编辑
摘要:官方解释:除 TextField 和 Video 对象以外,没有内容的显示对象(如一个空的 Sprite)的高度为 0,即使您尝试将 height 设置为其它值,也是这样。如果您设置了 height 属性,则 scaleY 属性会相应调整(width类推)也就是说,一个空的sprite,既使您设置了width,height也是没用的(而且人为设置了反而会有负作用,见下面的代码)注意:这里人为指定了... 阅读全文
posted @ 2010-07-17 21:49 菩提树下的杨过 阅读(5414) 评论(5) 推荐(3) 编辑
摘要:“flash开发”发展到今天,大体上已经细分为二个分支:Flash 设计师 和 Flash程序员,然而设计师不懂代码,程序员不懂设计,如何把这二种角色有机结合起来,实现代码、界面分离?可能下面的办法对你有用:actionscript3允许把外部swf直接用Embed标记嵌入到主类中(当然用UrlLoader动态加载也行),这意味着设计师们可以把一些常用的与代码无关的素材(比... 阅读全文
posted @ 2010-07-17 12:38 菩提树下的杨过 阅读(3889) 评论(4) 推荐(0) 编辑
摘要:在上一篇的最后,我们成功的用“等角投影”模拟出了立体空间的盒子模型,但是很快你就会发现这个示例的bugbug1:在已经有box的地方,再点击,将会重复创建box新实例。bug2:后面添加的box,会挡住前面添加的box。bug3:在边缘部分,如果用鼠标小心的点击,可以创建出很多超出world范围之外的盒子(即:看起来好象挂出去了)我们按轻重缓急来处理吧:bug2最严重,它直... 阅读全文
posted @ 2010-07-14 21:11 菩提树下的杨过 阅读(3534) 评论(2) 推荐(3) 编辑