首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Web前端 >

关于Array和ArrayCollection的循环删除的有关问题

2012-11-23 
关于Array和ArrayCollection的循环删除的问题根据Array得到索引循环删除ArrayCollection中的数据出现问题。

关于Array和ArrayCollection的循环删除的问题
根据Array得到索引循环删除ArrayCollection中的数据出现问题。

?

伪代码描述:

下面的代码能正常工作

for(var i:int,i<array.length;i++){

?arrayColleciont.removeItemAt(i);

}

下面的却不能:

for(var i:int=array.length-1,i<0;i--){

?arrayColleciont.removeItemAt(i);

}

?

?

真实代码:

注意:
unAssignedList和assignedList是mx.controls.List?,它们的dataprovider分别是unassignedDatas和assignedDatas。

?源码

?private?function?addBtn_clickHandler(event:MouseEvent):void{
???????????????var?selectedIndeies:Array?=?this.unAssignedList.selectedIndices;
????????????????var?selectedItems:Array=this.unAssignedList.selectedItems;

??????????????if(selectedItems.length<=0){
????????????????????????Alert.show("请选择"+this.title,"选择");
????????????????????return;

?????????????}
????????????????//按升序排序
????????????????selectedItems.sort();
????????????????//构造数据源?

???????????????for(var?index1:uint=0;index1<selectedItems.length;index1++){

?????????????????assignedDatas.addItem(selectedItems[index1]);
????????????????}
???????????????????//下面的代码可以正常工作


?????????????selectedIndeies.sort(Array.DESCENDING);

???????????

?????????????for(var?index:int=0;index<selectedIndeies.length;index++){

??????????????????this.unassignedDatas.removeItemAt(selectedIndeies[index]);

??????????????}

?

?????????????????//下面蓝色的循环代码无法删除?unassignedDatas的数据。

?

???????????????//selectedIndeies.sort();

?

?????????????????//??????for(var?index:int=selectedIndeies.length-1;index<0;index--){

?????????//??this.unassignedDatas.removeItemAt(selectedIndeies[index]);

//????????????????}

?

//??????????????将数据源提供给List以更新View
????????????????this.assignedList.dataProvider=this.assignedDatas;
????????????????this.unAssignedList.dataProvider=this.unassignedDatas;
????????????}

热点排行