AIR 模式化窗口

2009年7月6日 5 条评论

做地图编辑器的时候,要用到模式窗口,于是乎 : Google,baidu,qq齐上阵。
经过一下午的努力,终于解决了.其实方法蛮简单的,只是一时糊涂,没想到,放代码上了。

代码放到了我在github的类库里,请看 com.litefeel.utils.NatiaveWindowUtil 的源码。

标签: ,

NumberText

2009年7月5日 没有评论

这时一个数字输入框,优化过的请看 重写NumberText为NumTextField

下面这个为老版本,不建议使用。

这是一个AS写的仅能输入数值的文本效果,如果你看不到这个flash,请到文章页面查看!

Loader 加强版 LoaderPlus

2009年6月30日 3 条评论

更新日志:
2010.3.30. 修改Event.COMPLETE侦听为Event.INIT。
2009.11.3. 修改loadBytes方法里removeListener()为addListener()。

Loader不能在没有加载内容或加载未完成前设置width,height属性,否则加载完成后不能显示内容。

  • LoaderPlus 则是为了解决这个问题而诞生的,O(∩_∩)O~ 可以在任何时候设置 width,height属性
  • LoaderPlus相当安全,不必担心会造成内存泄漏,它跟Loader一样,当然player9里卸载一个带有as逻辑的swf,有点困难,这是Loader本身的问题,这里仍旧遗留下来了⊙﹏⊙b汗
  • LoaderPlus的使用方法跟Loader没有区别,你只需 导入LoaderPlus类,并将Loader替换成LoaderPlus就ok了

LoaderPlus的应用场合:仅当下面的两点都符合时,才用LoaderPlus,否则请用Loader。

  • LoaderPlus 只加载显示对象。
  • LoaderPlus加载的显示对象,一般不用取出来,直接对LoaderPlus操作就可以了。

LoaderPlus完整代码请移步到github:com.litefeel.net.LoaderPlus

标签: , ,

AIR Process terminated without establishing connection to debugger.

2009年6月30日 没有评论

问题:

airError.jpg

Process terminated without establishing connection to debugger.
Command:
"f:Program FilesAdobeFlex Builder 3 Plug-insdks3.2.0binadl.exe"
"E:My documentsFlexProjectmap Editorbin-debugMapEditor-app.xml"
"E:My documentsFlexProjectmap Editorbin-debug"
Output from command:
invalid application descriptior: descriptor version does not match runtime version

解决方法:

修改air-app.xml配置文件。
将Application修改为下面的一行, 重新编译,ok解决了。

<application xmlns="http://ns.adobe.com/air/application/1.5">

温馨提示 ;-)

flex sdk 3.0.0的改成 1.0
flex sdk 3.2 的改成 1.5

标签: ,

AS画斑马线,画虚线

2009年6月26日 没有评论
这是一个绘图扩展类graphicsUtil的demo效果,如果你看不到这个flash,请到文章页面查看。

阅读全文...

MultiTimer 用法

2009年6月24日 2 条评论

不好意思,只写了类实现没写用法,现写了一个示例,限于篇幅,另写一篇。
欲了解更多MultiTimer的细节请看这里

这篇只写MultiTimer的使用。
阅读全文...

标签: , ,

MultiTimer 单一计时器处理多计时器的事情 更高效 更安全

2009年6月24日 1 条评论

2009.10.6 更新
有时有一些function都有延时,并且频率都一样。
一般的做法是:每个function都new Tiemr。
function不多时还好,一旦多了就很浪费资源,效率也就相应下降了。 这个时候,O(∩_∩)O哈哈~ MutiTimer 出场了。

MutiTimer应用环境:

  • 有多个function要延时调用
  • 所有function的调用的频率相同

MutiTimer相比于Timer优点

  • 更高效:用一个Timer调用所有的function
  • 传任意参数:Timer TimerComplete都可以传任意个数参数
  • 更安全:不使用事件,就不需要关心移出事件

MutiTimer相比于Timer缺点

  • 多个function必须频率一致,也就是Timer.delay一样,不然精确度低
  • 不能记录执行了多少次
  • 启动了一个function后,这个function将不能停下,直到指定时间之后自动停止

MultiTimer的用法
MultiTimer的源码

SimpleTextLoader最简单的加载

2009年6月15日 没有评论

最简单的加载类,O(∩_∩)O~
不用你写侦听, 就好像在用AS2一样方便。
你也不必担心它不够安全,O(∩_∩)O哈哈~
阅读全文...

标签: , ,

String扩展类

2009年6月12日 没有评论

这是一个String的扩展类,adobe也有类似的类,不过感觉我这个要比他写的好,效率高,O(∩_∩)O~

下面介绍下功能:

  • leftTrim : 删除字符串左导空白
  • rightTrim : 删除字符串右导空白
  • trim : 删除字符串左右导空白
  • removeWhitespace: 删除字符串所有空白(不论在哪里的)
  • replace : 替换字符串的所有 replace 字符串 为要替换的字符串, 类似 String.replace,不过这个会替换所有的,而不仅仅是第一个
  • memset : 生成 n 个字符串 str组成的字符串

StringUtil源码

标签: , ,

AS 对象 深度复制

2009年6月7日 没有评论

对象赋值分浅复制和深复制,Array.concat就属于浅复制。
浅复制:将实例及子实例的所有成员(属性,静态的除外)都复制一遍。
深复制:将实例及子实例的所有成员(属性, 静态的除外)都复制一遍,(引用要重新分配空间!)

AS3里没有深复制,就写了个深复制的工具类ObjectUtil.as。
AS3里矢量的显示对象不能被复制,所以这里的ObjectUtil也不能复制显示对象。

ObjectUtil的局限性:

  1. 不能对显示对象进行复制
  2. obj的必须有默认构造函数(参数个数为0,或都有默认值)
  3. obj 里有obj类型 之外 的非内置数据类型时, 返回类型将不确定

ObjectUtil源码

回到顶部