首页 > 其他 > 详细

Flex4 vs Flex3: Repeater vs DataGroup

时间:2015-05-05 18:16:32      阅读:207      评论:0      收藏:0      [点我收藏+]

 

repeaters太老土了!如果你过去使用过它,你会发出这种感概。现在,我们终于要摆脱它了。
Repeaters不仅有沉重的组件,而且接合使用很不方便。那么,Flex 4中有什么可以帮助我们吗?DataGroups!
下面的例子都会用到这个数据:
  1. userData = new ArrayCollection();
  2.     userData.addItem({"fname":"Rich","lname":"Tretola"});
  3.     userData.addItem({"fname":"Joe","lname":"Smith"});
  4.     userData.addItem({"fname":"Bill","lname":"Johnson"});
复制代码
Flex 3的例子使用了Repeater和一个名为PersonRenderer的自定义组件:
主文件中的Repeater(Flex 3):
  1. <mx:VBox horizontalCenter="0" verticalCenter="0">
  2.     <mx:Repeater id="rep" dataProvider="{userData}">
  3.         <local:PersonRenderer person="{rep.currentItem}"/>
  4.     </mx:Repeater>
  5. </mx:VBox>
复制代码
PersonRenderer 组件(Flex 3):
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <mx:HBox xmlns:mx="http://www.adobe.com/2006/mxml" >
  3.     <mx:Script>
  4.         <![CDATA[
  5.             [Bindable]
  6.             public var person:Object;
  7.         ]]>
  8.     </mx:Script>
  9.     <mx:Label text="{person.fname} {person.lname}"/>
  10. </mx:HBox>
复制代码
<ignore_js_op>技术分享 

使用了DataGroup和ItemRenderer的Flex4例子。代码如下:
主文件中的DataGroup:
  1. <s:DataGroup itemRenderer="PersonRenderer"
  2.              dataProvider="{userData}"
  3.              verticalCenter="0" horizontalCenter="0">
  4.     <s:layout>
  5.         <s:VerticalLayout/>
  6.     </s:layout>
  7. </s:DataGroup>
复制代码
PersonRenderer ItemRenderer (Flex 4):
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <s:ItemRenderer xmlns:fx="http://ns.adobe.com/mxml/2009"
  3.             xmlns:s="library://ns.adobe.com/flex/spark">
  4.     <s:Label text="{data.fname} {data.lname}"/>
  5. </s:ItemRenderer>
复制代码
<ignore_js_op>技术分享

Flex4 vs Flex3: Repeater vs DataGroup

原文:http://www.cnblogs.com/jiahuafu/p/4479342.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!