NumberText

2009年7月5日 1 条评论

这时一个数字输入框,优化过的请看 重写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日 4 条评论

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

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

标签: , ,

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

2009年6月24日 3 条评论

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日 1 条评论

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

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

ObjectUtil的局限性:

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

ObjectUtil源码

AS3 单例类

2009年6月7日 没有评论
package 
{
    /**
     * 单例类 范例
     * 在AS3里 单例类一般用 包外类 实现.(我以前也总是这样!)
     * 但不能用编译时类型检测,容易出错
     * 
     * 多申请一个包外类则
     *   既有了保外类实现单例类的优点,
     *   又可以在编译时进行类型检测,还有代码提示
     * 
     * www.lite.cn (lite3)
     * lite3@qq.com
     * qq:735486078
     * 欢迎访问我的博客 
     * 
     * @author lite3
     */
    public class SingleClass 
    {
        static private var instance:SingleClass;  /* 单例类实例 */

        static public function getInstance():SingleClass
        {
            if (!instance) instance = new SingleClass(new one());

            return instance;
        }

        public function SingleClass(p:one) 
        {
            if (!p)
            {
                /**
                 * 报错后,如果捕获    则返回为 null
                 * 如果未捕获    则直接挂掉,O(∩_∩)O~
                 */
                throw new Error("SingleClass不能直接new , 用静态方法 getInstance()!");
            }
        }

        // ...........
        // to do your code  
    }
}
class one { }
标签: , ,
回到顶部