分类目录归档:程序开发

NumberText

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

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

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

Loader 加强版 LoaderPlus

更新日志:
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.

问题:

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

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

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的源码

String扩展类

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

下面介绍下功能:

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

StringUtil源码