我试图通过扩展它的项目渲染器对Flex 4.5 Spark DropDownL的外观进行简单的更改,无论如何,即使是刚刚闪亮的新项目渲染器也会将标签为空白的项目带给我。 如果我删除渲染器一切都很好,但有了它 - 项目是空白的。
<s:DropDownList id="cbX" x="140" y="281" width="276" itemRenderer="comboItemRenderer" labelField="@text">
<mx:XMLListCollection>
<fx:XMLList>
<node text="1" />
<node text="2" />
<node text="3" />
</fx:XMLList>
</mx:XMLListCollection>
</s:DropDownList>
项目渲染器:
<?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">
<s:Label text="{data}"/>
</s:ItemRenderer>
这是一个错误,还是我做错了?
答案 0 :(得分:3)
尝试使用:
<?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">
<s:Label text="{label}"/>
</s:ItemRenderer>
渲染器的数据仍然是数据。但是如果使用labelField
,则依赖于List的标签计算例程。所以只需显示它。