zoukankan      html  css  js  c++  java
  • flex经验记录(转载)

    最近一直忙于项目,很好抽出时间学习,刚忙里偷闲浏览博客看到一位博友总结的一些flex的经验,感觉不错就转载过来,一来扩散一下,二来保存下来,以后忘记的时候可以回来学习下。

    原博文地址:http://blog.csdn.net/sjz168/article/details/7244369

    1. release时去掉所有trace信息和logger信息,否则影响性能2. 如果报无法访问本地文件或swf 在compile里面写 -use-network=false3. 实现component真正隐藏除了设置visible=false外还需要设includeInLayout = false4. 设手型有时出来设buttonMode="true" useHandCursor="true" 还要设mouseChildren="false"5. for循环时要用var len:int = array.length; for(var i:int = 0; i<len; i++)

    {

        //i 不要用number, len变量外提

     

    以相反顺序进行 while 循环的速度比正向循环快: var i:int = myArray.length; while (--i > -1) { }

     

    6. IE中FLASH链接区域鼠标闪, 在FLASH的属性参数中加上以下两句中任意一句都可以解决

    <param name="wmode" value="opaque">

    <param name="wmode" value="transparent">

     

    7. 用i>>1 替代 i/2

    8. 创建Object 用 var obj:Object = {} 代替 var obj:Object = new Object();  速度提升1.5倍

    创建Array 用 var arr:Array = [] 代替 var arr:Array = new Array();  速度提升3.5倍

    ArrayCollection的创建非常的慢,耗时大概是var arr:Array = []的100倍

    9. 循环中,常量要提出来,例如:

    var constant:String= MouseEvent.CLICK                

    for(var i:Number=0; i<100000; i++)                

    {                   

        tmpVar = constant;          

    }

     

    10. flex加载完module后,module里面的东西如果是用flash的组件,有时会出现flash组件不显示,需要调用validateNow()

    11. air工程中,自定义alert跟flex工程不一样,flex可以Application.application.addChild(alert),air在开多窗体时要Window.getWindow(obj).addChild(alert), obj是传进来的当前对象

    12. 外部读取文本要考虑转义字符的问题(比如 换行\n会变成\\n 要替换下)

    13. Container的borderStyle属性设为solid,cornerRadius才会有效果了。

    14. .actionScriptProperties 这个文件用来配置编译的属性,出现莫名其妙的问题的话 不妨看看这个文件

     

    15.尽可能避免使用中括号运算符。

    currentSprite = arraySprite[i]; currentSprite.x = Math.random()*stage.stageWidth; currentSprite.y = Math.random()*stage.stageHeight;

    16.请尽可能更新循环外的文本字段。

    for (var i:int = 0; i< 1500; i++ ) { content += "ActionScript 3"; } myTextField.text = content;

    17.不使用alpha属性

  • 相关阅读:
    Centos5.8 安装 ImageMagick 6.8.9-3
    Centos5.8 安装 Redmine
    Apache配置中的ProxyPass 和 ProxyPassReverse
    Centos5.8 安装SVN并配置HTTP访问
    Centos5.8 安装 MySQL5.6.19
    Centos5.8 安装 PHP5.5 和 memcached
    CentOS RHEL 安装 Tomcat 7
    Centos5.8 iptables管理
    在SecureCRT中使用rz和sz传输文件
    在Mac mini上安装 ESXi 5.5
  • 原文地址:https://www.cnblogs.com/junfly/p/3234611.html
Copyright © 2011-2022 走看看