将多个字符串和数组组合到一个dataProvider以获取spark列表

时间:2010-12-21 14:13:01

标签: actionscript-3 flash flex builder flex-spark

我正在努力解决这个问题,我需要做的是将5个数组和5个单独的字符串(来自JSON Web服务)组合到FlashBuilder Burrito中的单个列表项中。

Web服务返回数据如下

Title(String)
Array[0[name, size, imageurl]][1[name, size, imageurl]][2[name, size, imageurl]]

Title_1(String)
Array_1[0[name, size, imageurl]][1[name, size, imageurl]][2[name, size, imageurl]]

Title_2(String)
Array_2[0[name, size, imageurl]][1[name, size, imageurl]][2[name, size, imageurl]]

Title_3(String)
Array_3[0[name, size, imageurl]][1[name, size, imageurl]][2[name, size, imageurl]]

等等。我已成功地将它们拉出来并且每个都在调试器中跟踪,尽管因为我需要它们都在同一个列表中,所以我很难将它们作为数据提供者一起建立。

如果我将字符串和数组推到一起,则无法正确读取,因为主要标题与数组中产品的任何描述符处于不同的级别。所以我有点卡住了!

关于如何最好地解决这个问题的任何建议?

干杯

1 个答案:

答案 0 :(得分:0)

真正取决于应用程序的设计如何最好地接近这一点。如果列表将在属性(名称,大小,价格等)上排序,那么您可能希望将“类型”推送到数组中,而不是标签,并且可以在项呈示器中显示此内容。如果项目应按类型分隔,但也可以排序,您可能希望使用手风琴类型控件并具有单独的列表。

无论如何,您要做的是将数组连接成一个数组,并将“Title”作为属性推送到对象中。这样,您至少可以对标题进行排序,以便项目在单个列表中以正确的顺序显示。

否则你可以创建一个自定义控件,其中5个不同的列表堆叠在一起(没有滚动条),并让自定义控件手柄滚动所有5个列表,只有一个滚动条。