Apache flex 多维Arraylist和DropDownList
我的问题是,如何将这个多维阵列集合应用到下拉列表中Apache flex 多维Arraylist和DropDownList,apache-flex,actionscript,multidimensional-array,Apache Flex,Actionscript,Multidimensional Array,我的问题是,如何将这个多维阵列集合应用到下拉列表中 var someArray:ArrayCollection = new ArrayCollection( [ { label: "Level 1 p1", data: { label: "Level 2", data: "some stuff" } }, { label: "Level 1 p2", data: { label: "Level 2", da
var someArray:ArrayCollection = new ArrayCollection( [
{ label: "Level 1 p1", data:
{ label: "Level 2", data: "some stuff" }
},
{ label: "Level 1 p2", data:
{ label: "Level 2", data: "some stuff" }
}
] );
<s:DropDownList includeIn="items" id="classSelect" dataProvider="{someArray[0].data}" selectedIndex="0" labelField="label" x="405" y="150"/>
var someArray:ArrayCollection=newarraycollection([
{标签:“1级p1”,数据:
{标签:“2级”,数据:“一些东西”}
},
{标签:“1级p2”,数据:
{标签:“2级”,数据:“一些东西”}
}
] );
someArray[0]。数据-例如,将其指向条目1和数据级别的内容,而该数据级别又是arrayList,我在这里对指针如何工作的理解是否不正确 我不知道你说的是什么意思 将级别2应用于下拉列表 如果要在下拉列表中显示级别2文本,可以使用itemRenderer或深入对象以返回文本的。在概念上类似于这样:
protected function getLevel2(item:Object):String{
return item.data.label;
}
<s:DropDownList dataProvider="{someArray}" labelFunction="getLevel2" />
var newDataProvider :ArrayCollection = new AryCollection();
for each (item in someArray){
newDataProvider.addItem(item.data);
}
我还要补充一点,作为澄清,您当前的数据提供程序设置很可能会提供错误,因为您的“数据”是一个实现接口的通用对象
<s:DropDownList dataProvider="{someArray[0].data}" />
如果它真的起作用,那么你最终会得到一个只有一个项目的数据提供者。谢谢你的反馈,我使用了似乎解决了我问题的循环:p:@John Yes;我在浏览器中编写了所有代码;因此,可能存在一些语法错误,IDE无法立即发现这些错误。@John,如果您有后续问题;请随便问。如果您有一个不相关的问题,请随时向StackOverflow发布一个新问题。(但不能保证我会回答,但很可能其他人会回答)。如果您想雇佣我提供私人/机密帮助;私下联系我,电话: