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的更多相关文章

  1. 使用mx:Repeater在删除和添加item时列表闪烁

    使用mx:Repeater在删除和添加item时列表闪烁 不可能在用户界面上闪闪的吧,recycleChildren属性可帮助我们 recycleChildren属性==缓存,设为true就可以了 本 ...

  2. paip.关于动画特效原理 html js 框架总结

    paip.关于动画特效原理 html js 框架总结 1. 动画框架的来源:flex,jqueryui 3 2. 特效的分类 3 2.1. Property effects 动态改变一个或多个目标对象 ...

  3. paip.关于动画效果的原则 html js 框架总结

    paip.关于动画效果的原则 html js 框架总结 1. 动画框架的来源:flex,jqueryui 3 2. 特效的分类 3 2.1. Property effects 动态改变一个或多个目标对 ...

  4. 一个Flex 对话框的坑

    最近在项目中遇到一个问题,在Flex中使用Alert.show("this is content!", "title");发现对话框可以弹出来,但是文本始终不显 ...

  5. Flex4的可视化显示对象

    flex3中用addChild(child:DisplayObject) 增加显示对象,flex4中用addElement(element:IVisualElement).绝大多数的flex3显示控件 ...

  6. FLEX4中的Panel如何实现带自定义图标和按钮

      做过flex开发的程序员都知道,使用flex3中的panel自定义按钮很容易,而且flex3的panel有icon属性.但是flex4的中大部分的控件与flex3中的控件实现方式有很大的变化,同是 ...

  7. Flex4 DataGrid ItemRenderer内嵌方式

    Flex4 DataGrid ItemRenderer像Flex3一直内嵌ItemRenderer会报空对象引用的错误,如: <s:GridColumn dataField="titl ...

  8. 解决Flex4 发布后访问 初始化极其缓慢的问题

    原文http://blog.163.com/vituk93@126/blog/static/170958034201282222046364/ 昨天找了个免费.net空间,想测试一下做的一个简单Fle ...

  9. Flex4 设置combobox选项不可编辑

    近日做数据的增删改查,使用的flex4的ComboBox控件---> flex4中ComboBox其实就是TextInput的叠加 flex3中ComboBox其实就是Label的叠加 开始是使 ...

随机推荐

  1. SharePoint 2013 日历重叠功能简介

    之前做了一个“SharePoint 2013 日历根据Category显示不同颜色”,然后大家留言说为什么不用SharePoint自带的日历重叠功能,所以自己尝试一下这个功能,和之前的博客进行一下对比 ...

  2. SQLLDR 教程

      )- 总览     http://blog.csdn.net/dbanote/article/details/9153895 )- 命令行参数 http://blog.csdn.net/dbano ...

  3. android https正确调用方案(防中间人劫持)

    以下内容为原创,欢迎转载,转载请注明 来自博客园:http://www.cnblogs.com/joey-hua/p/4971380.html 1.劫持https接口 很多android客户端虽然使用 ...

  4. 使用imeOptions

    Android的软键盘右下角有Action按钮,如下图的“上一步” 在EditText中有 android:imeOptions选项,它包括完成按钮“actionDone”,发送按钮“actionSe ...

  5. 【即时通讯】XMPP调试与简单使用

    上篇讲了[即时通讯]即时通讯及XMPP概述及环境配置,接下来我们就要进行调试,看看是否可用! 在测试之前我们需要先事先保存一些东西,以便后面使用 —— 登录openfire后台 ——获取服务器名和端口 ...

  6. HDOJ1001-1005题解

    1001--Sum Problem(http://acm.hdu.edu.cn/showproblem.php?pid=1001) #include <stdio.h> int sum(i ...

  7. 【代码笔记】iOS-评分,支持我们

    一,效果图. 二,工程图. 三,代码. RootViewController.m - (void)viewDidLoad { [super viewDidLoad]; // Do any additi ...

  8. 使用sencha cmd 一键生成你的应用程序代码

    一键生成你的应用程序代码: ------------------------------------------------------------ 我们的出发点就是使用命令来产生一个应用程序,执行以 ...

  9. 分页查询的SQL语句

    select * from(select row_number() over (ORDER BY Id DESC) cyqrownum,t.* from [Table_TY_Member] t ) v ...

  10. Linux Swap交换分区介绍总结

    Swap交换分区概念   什么是Linux swap space呢?我们先来看看下面两段关于Linux swap space的英文介绍资料: Linux divides its physical RA ...