帮助为Flex 4创建自定义ItemRenderer

时间:2010-05-21 18:41:49

标签: flex4 itemrenderer tilelist

我正在尝试为Flex 4中的TileList创建自定义ItemRenderer。

这是我的渲染器:

<?xml version="1.0" encoding="utf-8"?>
<s:ItemRenderer xmlns:fx="http://ns.adobe.com/mxml/2009" 
                xmlns:s="library://ns.adobe.com/flex/spark" 
                xmlns:mx="library://ns.adobe.com/flex/mx" 
                autoDrawBackground="true">

    <mx:Image x="0" y="0" source="../images/blank-offer.png" width="160" height="144" smoothBitmapContent="true"/>
    <s:Label x="5" y="20" text="{data.title}" fontFamily="Verdana" fontSize="16" color="#696565" width="155"/>
    <s:Label x="5" y="42" text="{data.description}" fontFamily="Verdana" fontSize="8" color="#696565" width="154"/>
    <mx:Text x="3" y="59" text="{data.details}" fontFamily="Verdana" fontSize="8" color="#696565" width="157" height="65"/>
    <mx:Text x="3" y="122" text="{data.disclaimer}" fontFamily="Verdana" fontSize="5" color="#696565" width="157" height="21"/>

</s:ItemRenderer>

这是我的瓷砖列表:

<mx:TileList x="0" y="0" width="100%" height="100%" id="tileList" creationComplete="tileList_creationCompleteHandler(event)" dataProvider="{getDataResult.lastResult}" labelField="title" itemRenderer="renderers.OfferLibraryListRenderer"></mx:TileList>

当我运行应用程序时,我收到此错误:

错误#1034:类型强制失败:无法将渲染器:: OfferLibraryListRenderer @ 32fce0a1转换为mx.controls.listClasses.IListItemRenderer。

1 个答案:

答案 0 :(得分:0)

我认为在Flex4中,您应该使用<s:List>组件而不是<mx:TileList>。我尝试过这种方式并且有效。