我对XAML/WPF很有经验,但对Flex/Flex4还是个新手。我正在尝试使用ListBase和内联ItemRenderers构建一个可设置动画的对象列表,以及它们的动画的子列表。谁能解释一下为什么内部的ListBase会给我下面的错误,而外部的列表不会?
'spark.components.supportClasses.ItemRenderer' is not assignable to the default property, 'dataProvider', of type 'mx.collections.IList'.源码:
<s:ListBase dataProvider="{AnimationList}">
<s:itemRenderer>
<fx:Component>
<s:ItemRenderer>
<s:VGroup>
<s:Label id="labelDisplay" text="{data.Name}"/>
<s:ListBase dataProvider="{data.Animations}">
<s:ItemRenderer>
<fx:Component>
<s:ItemRenderer>
<s:HGroup>
<mx:Button label="play" />
<mx:Label text="{data.Name}"/>
</s:HGroup>
</s:ItemRenderer>
</fx:Component>
</s:ItemRenderer>
</s:ListBase>
</s:VGroup>
</s:ItemRenderer>
</fx:Component>
</s:itemRenderer>
</s:ListBase>发布于 2011-08-07 00:03:02
你使用的是<s:ItemRenderer> (所以它是ItemRenderer类的一个实例,分配给了ListBase的默认属性dataProvider)。我想它是个拼写错误,你会像在外部列表中一样使用属性<s:itemRenderer>。看看第一个字母的例子。在ActionScript中,所有的类都以大写字母开头。
https://stackoverflow.com/questions/6966871
复制相似问题