我为Flex Spark List组件创建了一个项目渲染器。问题是这段代码不能工作:
<s:Label left="10" right="10" top="10" bottom="10" fontSize="13" text="{data.getItemAt(1).toString()}"
textAlign="left" verticalAlign="middle"/>
下面的代码将:
<s:Label left="10" right="10" top="10" bottom="10" fontSize="13" text="{data[1].toString}"
textAlign="left" verticalAlign="middle"/>
由于绑定问题,我不能使用后面的代码。有人知道我哪里做错了吗?
正如@J_A_X的评论所说,这是两件完全不同的事情。
{data.getItemAt(1)...
指向一个ArrayCollection,或者其他的集合。
{data[1]...
指向数组。
尝试将数组视为数组集合不会让您走得太远。我建议确保列表中的每个项目实际上是一个ArrayCollection。或者,我更强烈支持将它们替换为值对象,并绑定到'title','text'或任何更正确地定义您希望显示的文本的属性。
{data.title}