1

我正在尝试为 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。

4

1 回答 1

0

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

于 2010-06-03T10:09:47.083 回答