很久没有写这个了,有时候是忙,有时候是不想写,自己也不是个很有坚持的人,总是这样慢慢的就过去了,随波逐流,或许大多数人都这样吧,周一等着周五,这几个月都在写FLex,这个算是半路出家,基本上没有基础,as或许还可以,毕竟是逻辑上的东西,自己学习下还可以写出来,但是那些众多的API接口,自己就感觉好迷茫了,或者说这个不算自己本意吧,我还是有点想写java的,但是公司这样安排,自己也要努力的学习了,没有系统学习的坏处就是,不系统,做到哪里知道哪里,而且不是从基础学期的,直接使用框架,对好多东西都不熟悉,最后还是总结一下自己写过的代码吧!
这个是PopUpAnchor弹出窗,内部关闭的方法,自己经常写的一句话
private function closeStationList(e:MouseEvent):void{ (this.owner as PopUpAnchor).displayPopUp = false; }
然后是事件的发送,现在自己还不是特别懂得事件,但也开始使用了,感受到了事件的好处,解耦合,在没有这个之前,自己一直用java的思路来理解flex,总是想这里调用,那里调用,但现在感觉他们是不一样的,之前自己写过这样的代码来执行回调:
(this.parent.parent.parent.parent.parent as ***)
.hideOrShowThisGroup("alarm");
这个就是java的思想,去找调用他的那个类,然后出来,这种写法现在看来太二了,parent得有多少层啊,所以flex事件远比这个好的多,还有一个dispatchEvent发出的事件是自己接受的,所要要自己监听,这个自己也错了好多次
dispatchEvent(new AppEvent(DETERMINE_ALARM_HANDLER, data));
还有就是自己写的CSS,不知道为什么写mx|Grid 这个写法就无法识别,现在也体会到Css了,呵呵比之前漂亮多了
.mxGrid{
verticalGap: -1;
horizontalGap: -1;
}
.mxGridItem {
borderStyle:"solid";
borderColor:"0xd1e7ff";
}
先写到这里吧,自己写了好多东西不写机会忘记了,对了还有一个,这里使用了useVirtualLayout虚拟布局的属性,因为渲染器的原因,如果不使用这个属性,当数据量达到200以上,每次加载就会卡2秒,用了这个属性就没有问了了,这个自己还一个算法的原因,写了好几种加载方法,都不管用,所以想问题可以多方面
<component:ExpandDataGroup id="carList"
right="{vscrollbar.width}" top="5" styleName="expandDataGroup" click="Lable_clickHandler(event)"
itemRenderer="widgets.actionNavigation.view.PostCarListItemRenderer3"
color="#666666"
width="100%" height="100%" dataProvider="{_dataProvider}">
<component:layout>
<s:VerticalLayout
useVirtualLayout="true"
gap="-1"/>
</component:layout>