我有一个Arraycollection,其中包含其他数组。 我想用一个项目渲染显示内部数据,但无法设法做到这一点 这是解释我的问题的示例代码
<s:DataGroup dataProvider="{news}"
itemRenderer="components.displaynews">
这是项目渲染
<s:Label text="{data.??/}"/>
现在我不明白的是数据之后会发生什么?在数组集合中,数据如下所示:myArrayCollection-&gt; [0] - &gt; firstname
所以当我将数据绑定到项呈现时,我如何表示[x]来获取我想要的特定名称?这个显然不会工作
<s:Label text="{data.[0].name/}"/>
还有一件事是使用简单项目渲染(图像和文本)在list \ group中显示数据的最轻量方法
谢谢你 10倍的帮助! private function convertFBEventData2TreeData(eventData:Object):Object
{
var children:ArrayCollection = new ArrayCollection();
var numAttrs:Number = 0;
for (var attrName:String in eventData)
{
var val:Object = eventData[attrName];
if (val != null)
children.addItem({label:attrName, children:convertFBEventData2TreeData(val)});
numAttrs++;
}
if (numAttrs == 0 && eventData != null)
{
children.addItem({label:eventData});
}
return children;
}
这是我的数据
eventData [] (@cb73bc9)
[0] Object (@a3f9461)
actions [] (@cb736f1)
application null
created_time "2011-07-29T11:46:31+0000"
from Object (@a49c179)
id "100002237793631_139378476146745"
message "2 And a half days on a 546 mile load just to find out they wont except the load,when we should b doin 1000 miles a day,somebody needs to get their shit together"
type "status"
updated_time "2011-07-29T11:46:31+0000"
[1] Object (@ca53239)
[2] Object (@d023a49)
[3] Object (@d029059)
[4] Object (@cb796e9)
[5] Object (@d023ce9)
[6] Object (@cb79809)
[7] Object (@a49c6e9)
[8] Object (@d0238c9)
[9] Object (@d029a19)
[10] Object (@ca53509)
[11] Object (@d0261a9)
[12] Object (@a5b5a91)
[13] Object (@cb79a61)
[14] Object (@d025761)
[15] Object (@d023b09)
[16] Object (@a49c521)
[17] Object (@d0258e1)
[18] Object (@d0232b1)
[19] Object (@cb80c11)
[20] Object (@cb3e4c1)
[21] Object (@a5b25f9)
[22] Object (@d074491)
[23] Object (@d02f9e9)
[24] Object (@d024b81)
length 25 [0x19]
有没有办法用项目渲染显示它?我无法做到这一点
并使用上面的代码将其转换为arraycollection,然后数据如下所示:
resultsData mx.collections.ArrayCollection (@918cec1)
[inherited]
[0] Object (@d023779)
[1] Object (@d024f29)
children mx.collections.ArrayCollection (@ca1bac1)
[inherited]
[0] Object (@d0247a9)
children mx.collections.ArrayCollection (@ca1bb01)
label "updated_time"
[1] Object (@d0254f1)
children mx.collections.ArrayCollection (@ca1bb41)
label "id"
[2] Object (@d026d31)
children mx.collections.ArrayCollection (@ca1bc01)
label "from"
[3] Object (@d029461)
children mx.collections.ArrayCollection (@ca1bcc1)
label "link"
[4] Object (@d029b81)
children mx.collections.ArrayCollection (@ca1bd01)
label "type"
[5] Object (@d029b39)
[6] Object (@d02d491)
[7] Object (@d076671)
[8] Object (@d06f941)
[9] Object (@cb3e629)
[10] Object (@d0235e1)
[11] Object (@d0239b9)
[12] Object (@d024ef9)
source [] (@d07e0d9)
label "1"
[2] Object (@d023269)
[3] Object (@d02f941)
[4] Object (@d02d6d1)
[5] Object (@d023479)
[6] Object (@d076491)
[7] Object (@cb3ea19)
[8] Object (@cf9b4a9)
[9] Object (@cf992f9)
[10] Object (@cfac689)
[11] Object (@cfa9d19)
[12] Object (@d0797d9)
[13] Object (@d02b2b1)
[14] Object (@d02ffb9)
[15] Object (@d025ca1)
[16] Object (@cfa2629)
[17] Object (@cfac2c9)
[18] Object (@cfb8c71)
[19] Object (@cfc4bb1)
[20] Object (@cfb8a91)
[21] Object (@cf99bb1)
[22] Object (@d0ad569)
[23] Object (@c9681f1)
[24] Object (@d0a7959)
source [] (@ca7c061)
我也想不出一种让它在项目渲染中显示的方法!
项目渲染代码相当简单
<label text={data.??">
我不知道在数据之后要添加什么,我尝试了很多东西,但没有任何工作\:
答案 0 :(得分:0)
项目渲染有一个名为set data
的函数,它在幕后自动调用(在父类中)。所以数据,不是数组...它是你的行。所以你需要简单地{data.name}
假设一个对象在你的数组集合中,并且属性为“name”。
如果您的数组集合只是字符串...那么您只需使用{data}
。如果你有一个带有图像位置和名称的对象,那么只需按照你命名的方式绑定到这些属性。
希望这有帮助!