为什么XMLListCollection会被Flash Builder 4.6中的addItamAt函数破坏

时间:2013-02-09 04:44:41

标签: flash-builder

有问题的XMLListCollection被称为studentsAll,在创建后看起来像这样......

<details>
   <name>Baughman,  John D (@hawaii.rr.com at Pearl City H. S.)</name>
   <id>2693</id>
   <emailpw>johnbdh@hawaii.rr.com</emailpw>
   <pw/>
 </details>
 <details>
    <name>Benoit, Sandra (@gmail.com at Pearl City H. S.)</name>
    <id>2694</id>
    <emailpw>sandra@gmail.com</emailpw>
    <pw/>
 </details>

然后我跑了......

studentsList = new XMLListCollection;
studentsIDs = new XMLListCollection;

for (var _index:int=0; _index < studentsAll.length; _index++) {
    studentsList.addItemAt(studentsAll[_index].name, studentsList.length);
    studentsIDs.addItemAt(studentsAll[_index].id, studentsIDs.length);

}

Wehn完成了XMLListCollection学生所有人看起来像这样......

<details>
    <name>Baughman,  John D (@hawaii.rr.com at Pearl City H. S.)</name>
    <name>Benoit, Sandra (@gmail.com at Pearl City H. S.)</name>
    <id>2693</id>
    <id>2694</id>
    <emailpw>johnbdh@hawaii.rr.com</emailpw>
    <pw/>
</details>
<details>
     <name>Benoit, Sandra (@gmail.com at Pearl City H. S.)</name>
     <id>2694</id>
     <emailpw>sandra@gmail.com</emailpw>
     <pw/>
</details>

注意第二个索引中的标记是如何在第一个索引中重复的。

这是一个错误吗?

谢谢,

约翰

1 个答案:

答案 0 :(得分:0)

恕我直言,这是由SDK错误造成的:https://issues.apache.org/jira/browse/FLEX-33913

一个非常讨厌的错误;就个人而言,我现在根本不信任XMLListCollection。

<强>解决方法: 使用XMLList,Array或ArrayCollection而不是XMLListCollection或在克隆的集合上运行for循环 - 使用.copy()

相关问题