解析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渲染器则是将要显示的效果通过外部组件或是外部类来进行定义开发。

  1. <mx:TileListxmx:TileListx="0"y="0"width="100%"height="100%"id="faceList" 
  2. dataProvider="{faceArray}"itemClick="onItemClick(event)"> 
  3. <mx:itemRenderer> 
  4. <mx:Component> 
  5. <mx:Imagesourcemx:Imagesource="{data.ImageUrl}"/> 
  6. </mx:Component> 
  7. </mx:itemRenderer> 
  8. </mx:TileList> 
  9.  

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

  1. package  
  2. {  
  3. importmx.core.UIComponent;  
  4.  
  5. publicclassFaceRendererextendsUIComponent  
  6. {  
  7. privatevarimageUrl:Image;  
  8.  
  9. publicfunctionFaceRenderer()  
  10. {  
  11. super();  
  12. }  
  13.  
  14. protectedoverridefunctioncreateChildren():void  
  15. {  
  16. imageUrl=newImage();  
  17. }  
  18.  
  19. protectedoverridefunctioncommitProperties():void  
  20. {  
  21. super.commitProperties();  
  22. imageUrl.source=data.ImageUrl;  
  23. }  
  24. }  
  25. }  
  26.  

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

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

【编辑推荐】

  1. 解析Flex组件中Label组件的用法
  2. Flex主题创建及支持的样式设置方式
  3. 全面认识Flex应用程序的六大元素
  4. 揭开Flex正则表达式的神秘面纱
  5. Flex数据绑定及其使用频繁的几种情况 

 

责任编辑:佚名 来源: cnblogs.com
相关推荐

2010-08-13 11:21:31

Flex渲染器

2009-07-15 13:48:26

Swing模型和渲染器

2014-06-18 10:34:41

Android字体渲染器OpenGL ES

2009-07-16 10:26:49

渲染器接口Swing

2009-07-16 10:11:06

渲染器RendererSwing组件

2017-12-26 14:27:24

2010-08-11 13:28:46

Flex行为

2022-04-18 08:09:44

渲染器DOM挂载Vue.js

2010-08-09 15:52:28

2010-08-05 13:14:16

Flex布局

2010-06-30 13:45:05

ZKZK 5.0.3

2010-08-10 11:08:32

Flex外部样式表

2017-03-12 10:15:18

浏览器DOM树CSSOM树

2010-08-06 14:13:31

FlexDataGrid分页控

2022-04-20 09:07:04

Vue.js的事件处理

2022-04-19 23:01:54

Vue.jsDOM节点DOM树

2010-08-03 10:46:41

Flex代码格式化

2018-01-19 14:39:53

浏览器页面优化

2010-07-30 09:50:36

Flex播放器

2010-08-11 09:21:37

点赞
收藏

51CTO技术栈公众号