解析Flex渲染器的使用

本文向大家介绍一下Flex渲染器的使用,Flex渲染器使用非常频繁,可以让用户自行定义数据的显示格式
首页 新闻资讯 行业资讯 解析Flex渲染器的使用

在学习Flex的过程中,你可能会遇到Flex渲染器的概念,这里和大家分享一下Flex渲染器的使用,在Flex要显示特定的格式完全可以通过Flex渲染器来自定义。

Flex中使用渲染器(ItemRenderer)

Flex渲染器使用非常频繁,可以让用户自行定义数据的显示格式,做过.NET开发的朋友我想都知道数据控件中的ItemTemplate,我个人认为Flex中的Flex渲染器和.NET中的ItemTemplate从功能上来说相差不大,在Flex要显示特定的格式完全可以通过Flex渲染器来自定义。

在《使用TileList+TitleWindowt组件开发聊天表情功能》这文章里其实就已经用到了Flex渲染器,只是没有专们提出来介绍,这里使用的是内部ItemRenderer,除此之外我们还可以使用外部ItemRenderer。故名思意内部ItemRenderer就是直接嵌套在Flex内部的,外部Flex渲染器则是将要显示的效果通过外部组件或是外部类来进行定义开发。

复制

<mx:TileListxmx:TileListx="0"y="0"width="100%"height="100%"id="faceList" dataProvider="{faceArray}"itemClick="onItemClick(event)"> <mx:itemRenderer> <mx:Component> <mx:Imagesourcemx:Imagesource="{data.ImageUrl}"/> </mx:Component> </mx:itemRenderer> </mx:TileList>
  • 1.

  • 2.

  • 3.

  • 4.

  • 5.

  • 6.

  • 7.

  • 8.

  • 9.

 如上则是使用的内部ItemRenderer,通过<mx:itemRenderer>和<mx:Component>在Flex组件的内部定义项目渲染器(ItemRenderer)。如果想使用外部Flex渲染器的方式实现呢,则需要定义一个外部Flex渲染器,将Renderer的格式在自定义的类或组件中去实现,如下:

复制

package  {  importmx.core.UIComponent;   publicclassFaceRendererextendsUIComponent  {  privatevarimageUrl:Image;   publicfunctionFaceRenderer()  {  super();  }   protectedoverridefunctioncreateChildren():void  {  imageUrl=newImage();  }   protectedoverridefunctioncommitProperties():void  {  super.commitProperties();  imageUrl.source=data.ImageUrl;  }  }  }
  • 1.

  • 2.

  • 3.

  • 4.

  • 5.

  • 6.

  • 7.

  • 8.

  • 9.

  • 10.

  • 11.

  • 12.

  • 13.

  • 14.

  • 15.

  • 16.

  • 17.

  • 18.

  • 19.

  • 20.

  • 21.

  • 22.

  • 23.

  • 24.

  • 25.

  • 26.

 在Flex组件中通过Flex渲染器属性引用自定义的外部渲染器就OK了,最终效果就是《使用TileList+TitleWindowt组件开发聊天表情功能》这文章里的效果。

复制

<mx:TileListxmx:TileListx="0"y="0"width="100%"height="100%"id="faceList" dataProvider="{faceArray}" itemClick="onItemClick(event)" itemRenderer="FaceRenderer"> </mx:TileList>
  • 1.

  • 2.

  • 3.

  • 4.

  • 5.

【编辑推荐】

  1. 解析Flex组件中Label组件的用法

  2. Flex主题创建及支持的样式设置方式

  3. 全面认识Flex应用程序的六大元素

  4. 揭开Flex正则表达式的神秘面纱

  5. Flex数据绑定及其使用频繁的几种情况

 

11    2010-08-13 11:02:27    Flex渲染器