Apache flex 将数据提供程序的数组转换为Arraylist时出现问题
这样行吗?MealDataGrid正在基于数组填充,但我正在调试,MealListResult为null。但是,膳食不是,我不知道我是否遗漏了一些简单的东西 我可以通过如下方式让它工作:Apache flex 将数据提供程序的数组转换为Arraylist时出现问题,apache-flex,types,arraylist,dataprovider,Apache Flex,Types,Arraylist,Dataprovider,这样行吗?MealDataGrid正在基于数组填充,但我正在调试,MealListResult为null。但是,膳食不是,我不知道我是否遗漏了一些简单的东西 我可以通过如下方式让它工作:var MealsListResult2:ArrayList=newarraylist(膳食)但是我觉得第一种方法也应该有效 (这里当然没有显示mxml列表和datagrid等)如果\u data.diems是它的运行时类型,那么\u data.diems as ArrayCollection将失败。但是,新的A
var MealsListResult2:ArrayList=newarraylist(膳食)
但是我觉得第一种方法也应该有效
(这里当然没有显示mxml列表和datagrid等)如果
\u data.diems
是它的运行时类型,那么\u data.diems as ArrayCollection
将失败。但是,新的ArrayCollection(\u data.fines as Array)
可以正常工作
CMIIW
我想你的问题是你不能使用单个对象作为2个或更多不同的ui数据提供者
尝试使用
private var MealsListResult:ArrayList = new ArrayList;
protected var _data:resultData = new resultData;
private function resultHandler():void
{
var Meals:Array = _data.Meals;
MealsListResult = _data.Meals as ArrayList;
MealDataGrid.dataProvider = Meals;
MealListView.dataProvider = MealsListResult;
}
更新:
对不起,我错过了里德,我还以为是ArrayCollection呢。但是,您所需要做的就是像ArrayCollection一样使用新的ArrayList(_data.das as Array)在数组中传递作为ArrayList的源数组-这是正确的方法。ArrayList只是数组的“包装器”,这就是为什么使用“As ArrayList”强制转换它不起作用的原因。与ArrayCollection相同我可以问一下,为什么ArrayList而不是ArrayCollection?我自己从来没有用过ArrayList
MealDataGrid.dataProvider = _data.Meals;
MealListView.dataProvider = ObjectUtils.clone(_data.Meals);