易截截图软件、单文件、免安装、纯绿色、仅160KB

flex开发中关于内存释放几个注意的地方

1.监听事件时用弱引用方式(特别是对Applicatiion.applicaion和Stage的事件监听),方式如下:第五个参数值为true
Application.application.addEventListener(MouseEvent.CLICK,doClick,false,0,true);
2.集合类如Array和Dictionary里的元素,在不用的时候要设置为null;(尤其是主页面上的集合类),如:myMap[o]=null;
3.方法中创建的变量引用必须用var修饰,否则将被认为是全局变量,永远不会释放内存。
4.所有的css类都定义到css.css文件里,不要在模块里定义css,不然会导致gc不干净
5.moduelLoader的内存泄露问题:
经过初步测试,在debug版的flashplayer里,ModuleLoader的unload方法有严重的内存泄露问题(用moduleLoader不断地加载不同的url);但是在release版中表现正常;
如果需要在debug版的方法里规避此问题可用以下方法加载url,不要用unloader方法:
/**
*为了解决moduleLoader的内存泄露问题
* @param oldMLoader 需要改变url的moduleLoader
* @param url 指定的url
*
*/
static public function fixLoadForModuleLoader(oldMLoader:ModuleLoader,url:String):void{
var tparent:Container=oldMLoader.parent;
var index=oldMLoader.parent.getChildIndex(oldMLoader);
var newMLoader:ModuleLoader=new ModuleLoader();
newMLoader.url=url;
tparent.removeChildAt(index);
tparent.addChildAt(newMLoader,index);
newMLoader.name=oldMLoader.name;
newMLoader.percentWidth=oldMLoader.percentWidth;
newMLoader.percentHeight=oldMLoader.percentHeight;
oldMLoader=newMLoader;
if(oldMLoader.parent is ViewStack){
(oldMLoader.parent as ViewStack).selectedIndex=index;
}else if(oldMLoader.parent is TabNavigator){
(oldMLoader.parent as TabNavigator).selectedIndex=index;
}
}
复制代码


相关文档:

flex通过blazeds与java实现增删改查

用的是MySQL数据库。
1,建一个userdb库,再建userinfo表,字段:id(int),username(varchar),password(varchar)。
create database userdb;
use userdb;
create table userinfo(
id int(10) not null auto_increment,
username varchar(20),
password varchar(20),
primary key(id));
2,DBConnection.jav ......

Flex学习好网站


新手入门参考:
Adobe Flex 3 - adobe.com
Adobe Flex Sample Applications - adobe.com
Video Training (Learn Flex in a Week) - adobe.com
RSS Feeds (Get regular updates about Flex) - adobe.com
Learn about Flex Open Source - adobe.com
Get Flex 3 SDK - adobe.com
Get Flex Builder 3 - adobe.com ......

flex Alert组件用法


<?
xml
 
version
=
"1.0"
?>
  
<!-- Simple example to demonstrate the Alert control. -->
  
<
mx:Application
 
xmlns:mx
=
"http://www.adobe.com/2006/mxml"
>
  
&n ......

flex webserver .net

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600">
<fx:Script>
<!--[CDATA[
import mx.rpc.ev ......

每天学一点flex(2):Accordion 组件

  很久没去练习flex 开始有点生疏,用起来还是很舒服。flex 3和flex4之间存在一些差别,所以在选择的时候需要小心一点,今年主推flex 4 所以初学的人可以跳过flex 3直接学flex4。 因为flex 开发是建立在as 3基础上,故此研究类库之间结构是一件很不错的事情。毕竟结构美是学习编程一种美学流。
  今天的纯粹练习 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号