一般情况下,flex会把dataprovider为Array的组件的dataprovider自动转换成ArrayCollection比如list。 印象中好像是这样的: <List id="list" dataProvider="{arr}"/> <script> private function f():void{ var ac:ArrayCollection=list.dataProvider; var a:Array=ac[0];//这个Array就是你提供给list的那个Array; } <script>以前做过的,印象中是这样的,另外,如果不行的话,你可以通过flex的debug功能看看list的dataprovider到底变成什么了,然后再取。
一般作为dataprovider的数组多为集合类型。你想取出arr1的值,那你就需要知道arr1的结构是怎样的比如:strArray其Struct如下:{ id:Number, no:String, str:String}例子:var strArray:Array = new Array();var sum:uint = Number(numText.text);for(var num:uint = 1; num <= sum; num++){ strArray.push({id: num, no: "1", str: num.toString()});//编号,位数,对应表达式}//使用for循环遍历数组的所有成员for(var i:uint = 0; i< strArray.length ; i++){ trace(strArray[i].id, strArray[i].no, strArray[i].str,);}