flex 日记1 cairngorm
学flex就是为了跳槽,万恶的公司,年底什么都没有,害的我都没钱回家,杯具啊。
学flex已经有一段时间了,我是java程序员,欢迎大家交流
最近学了点cairngorm 感觉用起来比struts繁琐一点,废话少说,上代码:
1.先看vo,本实例是一个添加联系人的小例子,名字,邮箱,添加时间三个属性,都是搞 java的,刘若英说了 ,你知道,我知道
package adobe.vo
{
import com.adobe.cairngorm.vo.ValueObject;
public class ContactVO implements ValueObject
{
public function ContactVO()
{
}
public var fullName:String;
public var email:String;
public var addContactDate:String;
}
}
2.接下来就mvc吧,cairngorm 几个主要的组件 :
modellocator (其实就是一个全局的容器,把你需要保存的数据放里边)
command (这个是boss,负责把数据加入到modellocator中,还可以有一个代理,必要的话,和数据库交流交流)
frontControl ( 我说就是一个监听器,江湖上有事了他都去报告掌门人(command))
cairngormEvent (自定义事件 没什么好说滴)
代码上 modellocator
package adobe.model
{
import com.adobe.cairngorm.model.ModelLocator;
import mx.collections.ArrayCollection;
[Bindable]
public class ContactModelLocator implements ModelLocator
{
public function ContactModelLocator()
{
}
private static var instance:ContactModelLocator;
//单例的,我知道,你知道
public static function getInstance():ContactModelLocator{
if(instance == null){
instance = new ContactModelLocator();
}
return instance;
}
//数组,想放什么就放什么
public var contacts:ArrayCollection = new ArrayCollection();
}
}
command:
package adobe.commands
{
import adobe.control.AddContactEvent;
import adobe.model.ContactModelLocator;
import adobe.vo.ContactVO;
import com.adobe.cairngorm.commands.Command;
import com.adobe.cairngorm.control.CairngormEvent;
import mx.formatters.DateFormatter;
public class AddContactCommand implements Command
{
public function AddConta
相关文档:
1、当创建一个数组的时候避免用new操作符,用 var a:Array = [];而不用var a:Array = new Array();
2、快速的复制一个数组:
var copy : Array = sourceArray.concat ();
3、设置一个数组的值是非常忙的:
employees.push ( employee ); employees[2] = employee;
4、从一个数组中取得值的速度是设置一个数组值的两倍 ......
XML 作为数据源的实例(TESTED)
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" preinitialize="preInit()" fontSize="12" height="500">
<mx:Script>
  ......
作为一个不入流的flex开发人员总结一下不入流的感悟。
我一定要记住,as中的变量的作用范围只有两种,function和class,所以要想用闭包就需要一个createFunction的东西才行,不要妄想在for循环中用闭包了。看了一下as3的参考,发现它的前世和lua还真像,as3的继承其实还是prototype来做的,就是lua的元表了, ......
这几天要学一下flex开发,但是安装的是eclipse插件版的,可是安装好后发现没有可视化的编辑视图,最后发现其实是因为flex的mxml文件的打开方式是使用的spket编辑器打开的,所以没有可视化编辑视图,于是吧spket卸载了。就好了。记录一下,希望能帮到别人,也让自己记住 ......