首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 媒体动画 > flex >

Flex心得小记录 (每天记录一点点ing.)

2012-11-23 
Flex经验小记录 (每天记录一点点ing...)1. release时去掉所有trace信息和logger信息,否则影响性能2. 如果

Flex经验小记录 (每天记录一点点ing...)

1. release时去掉所有trace信息和logger信息,否则影响性能
2. 如果报无法访问本地文件或swf 在compile里面写 -use-network=false
3. 实现component真正隐藏除了设置visible=false外还需要设includeInLayout = false
4. 设手型有时出来设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属性

1 楼 hongtashan 2009-09-08   虽然很少  确实是经验之谈 2 楼 xinzy 2009-09-08   hongtashan 写道虽然很少  确实是经验之谈
呵呵  慢慢记录中。。做一年多flex flash都没怎么记录些小经验,现在碰到一点记一点。。

热点排行