Flex编程小技巧集锦
关键词: FLEX
1. 让 FlexBuilder 在编译 mxml 时生成 AS 中间代码:
在工程属性页的“Flex Compiler”处的编译参数增加: -keep-generated-actionscript
2. AS3中对象深度拷贝通用方法(对于Transient不拷贝)
public static function cloneObject(source:Object) :* {
var typeName:String = getQualifiedClassName(source);//获取全名
var packageName:String = typeName.split("::")[1];//切出包名
var type:Class = Class(getDefinitionByName(typeName));//获取Class
registerClassAlias(packageName, type);//注册Class
//复制对象
var copier:ByteArray = new ByteArray();
copier.writeObject(source);
copier.position = 0;
return copier.readObject();
}
3. SharedObject对复杂对象的存取
var user:User=new User();
user.id=1111
registerClassAlias("com.kadang.User",User);
share=SharedObject.getLocal(name,path);
share.data.user=user;
读取的时候你可以直接: var ws:User=share.data.user.
关键就在于 registerClassAlias 函数
格式:registerClassAlias("别名",类名);
作用:将类以别名的形式进形AMF编码,以便在ShareObject,localConnection,ByteArray,等二进制数据传输交换中正确地还原成类.