在纯AS项目中嵌入swf资源

在纯as项目中,使用Embed元标签嵌入swf资源。

近来想要告别Flash Pro编译,因为从效率上和资源占用上来说,FlashDevelop功能齐全又快速方便。不过有些图形资源还是只有用Flash Pro做起来最简单,而且我的早期项目大多是在Flash Pro里做的,所以我需要将他们嵌入到代码当中。

经过尝试,最符合我要求的操作是这样:

[Embed(source = '/assets/bannerProducer.swf', symbol = "toolbar")]
[Bindable]
public static var TOOL_BAR:Class;

其中,source后面的路径是项目路径,和嵌入元素的类所在的包无关;symbol属性指向的是希望从swf中取出哪个元件,元件需要事先在属性里选择“为ActionScript导出”。使用的时候直接声明实例就好:

var toolbar:TOOL_BAR = new TOOL_BAR();

PS:发现这样做之后,字体会有问题。在Flash Pro里面,文本框设置字体为“微软雅黑”,然后在平滑选项里选择“使用设备字体”,输出的swf会有限使用本地的“微软雅黑”字体;导入再输出的时候,只会保留“设备字体”这个选择。如果在Flash Pro里面嵌入字体,显示就正常了。

AS3中的插件模式开发(一)

插件式开发是我非常喜欢的一种设计模式。实际工作中,对某一产品,经常因时间和场景的不同,需要不同的功能。比如,视频播放器,有时候需要包含贴片广告、更多推荐的全功能版本,有时候只需要播视频的基础功能;再比如一款在线游戏,可能圣诞需要上线一个活动,春节又希望上线另一个活动,但是两个活动的逻辑和功能可能完全不同,而且活动下线之后,里面的逻辑和功能可能再也用不上了。于是,为了解决这些问题,我们可以求助插件式开发。

本系列文章将在新博客更新,链接在此,请移步阅读。

继续阅读“AS3中的插件模式开发(一)”

新年写书计划——《ActionScript 3.0高级编程》

看到那个年仅21岁的外国男孩,周游世界,写完《Javascript Web应用开发》,然后入职twitter,无法不佩服起老外的敢想敢做。

看到那个年仅21岁的外国男孩,周游世界,写完《Javascript Web应用开发》,然后入职twitter,无法不佩服起老外的敢想敢做。

新年是一个定各种计划,许各种愿的时候。此时此刻我决定写一本书,书名暂定《ActionScript 3.0 高级编程》,内容可想而知。这本书未必能最终付印,可能最后会成为我博客上的一系列教程,总之我决定写出来,因为写书这件事儿听起来太nb了。

继续阅读“新年写书计划——《ActionScript 3.0高级编程》”

在Flash Builder 4.6里使用spark + Robotlegs

在spark里使用Robotlegs的小问题,官网现在还是mx框架,可能会有人遇到。

为了有一套好用的框架和组件改善开发环境,近期开始学习flex。因为之前几乎没有接触过flex,所以直接从FB4.6学起,直接开始用spark库。

自从7月份换了新工作接触到Robotlegs后,我就喜欢上这个框架,它非常自然、方便的解耦功能模块。所以学习flex第一步还是想继续使用Robotlegs框架,结果很快遇到了第一个问题。

继续阅读“在Flash Builder 4.6里使用spark + Robotlegs”

Flash Player 11 找不到JSON?

想试用FP11的新API,需要Flex 4.5.1,并且在编译的时候增加参数-swf-version=13

2011-11-23 更新

需要使用FP11中的新API,使用Flex 4.5.1默认编译仍然不行,必须在编译时增加参数:-swf-version=13,强制mxmlc输出13版本的swf文件。

在FD里面,应该右击项目 > Properties > Compiler Options > Additional Compiler Options > 添加参数,保存。

之后,编译通过,测试通过。


继续阅读“Flash Player 11 找不到JSON?”

Flash Player的TextField自动缩放机制

Flash Player在处理文本时,出于效率考虑,不会随时根据代码来调整文字排版——据我所知文字排版消耗非常大——而是在添加到显示列表或每一帧结束时再做处理。

今天发现一个问题,先详细描述一下我的需求:

  1. 显示一段文字,文字字数不定,但文本框长度有限,短于限制则完全显示,超过限制则截断只剩一行,并续以“…”
  2. 必须应对多语言环境,比如中文、英文、俄文等

继续阅读“Flash Player的TextField自动缩放机制”

FlashDevelop 使用笔记

包括Flash Develop使用中遇到的疑似bug、快捷键记录、小技巧、插件推荐等。根据经验实时更新。

Flash Develop是一款非常好用的ActionScript开发工具,其代码提示功能尤为强大;内建各种插件,可以方便的开发、调试、发布;而且还是免费的。最大的缺点可能是不支持ftp,插件相比Eclipse还是要少一些。

我在使用的版本:4.0.1
官网地址:http://www.flashdevelop.org/wikidocs/index.php?title=Main_Page
下载地址:http://www.flashdevelop.org/community/viewtopic.php?f=11&t=8622

包括Flash Develop使用中遇到的疑似bug、快捷键记录、小技巧、插件推荐等。根据经验实时更新。

继续阅读“FlashDevelop 使用笔记”

Robotlegs笔记

以下记录学习Robotlegs期间遇到的问题和解答。

Robotlegs是一个纯AS3的小型框架,他解决的是不同模块间的交互问题,View部分和Model部分可以保留之前的逻辑。即使不实用Robotlegs,了解他的架构设计思想,对我们的工作也会有很大帮助。

我在使用的版本:1.5.2
官网地址:http://www.robotlegs.org/
下载地址:http://downloads.robotlegs.org/robotlegs-framework-v1.5.2.zip

以下记录学习Robotlegs期间遇到的问题和解答。

继续阅读“Robotlegs笔记”