您的位置:首页 > 其它

Flex--之XML、XMLLIST和XMLListCollection的关系和区别

2010-12-14 14:56 351 查看
XML类是最处理XML的最小的单元,它必须有且只有一个根节点。例如:

1. private var company:XML =
2.    <list>
3.     <department title="Finance" code="200">
4.      <employee name="John H"/>
5.      <employee name="Sam K"/>
6.     </department>
7.     <department title="Operations" code="400">
8.      <employee name="Bill C"/>
9.      <employee name="Jill W"/>
10.     </department>
11.     <department title="Engineering" code="300">
12.      <employee name="Erin M"/>
13.      <employee name="Ann B"/>
14.     </department>
15.    </list>;


如果把<list>去掉的话,那它就不是一个XML对象,而变成了XMLList对象了。

下面来说一下XMLList对象,XMLList就是包含一个或多个XML对象的类。对于只包含一个 XML 元素的 XMLList
对象,可以使用 XML 类的所有属性和方法,因为包含一个 XML 元素的 XMLList 被视为等同于 XML
对象。但是如果它包含多个的话,那么调用XML的方法将会报出异常。虽然xml对象可以像上面一样初始化,但是XMLList却不可以。可以通过构造函数
把一个字符串构造一个XMLList对象。

var xmllist :XMLList = new XMLList(String str);

 或者用标签创建

 

1. <mx:XMLList xmlns="">
2.         <book>
3.             <author>Peter F. Hamilton</author>
4.             <title>Pandora's Star</title>
5.             <image>assets/pandoras_star_.jpg</image>
6.             <date>Dec 3, 2004</date>
7.         </book>
8.         <book>
9.             <author>Peter F. Hamilton</author>
10.             <title>Judas Unchained</title>
11.             <image>assets/judas_unchained.jpg</image>
12.             <date>Feb 28, 2006</date>
13.         </book>
14.     </mx:XMLList>


 

XMLListCollection类就是xmllist的集合形式,类似于array的集合形式是arraycollection,这两种集合是绑定到组件的数据源,他们具体动态感知变化的特性。

XMLListCollection对象必须这样创建:new XMLListCollection(XMLList xmllist);

在本例中,可以这样private var companyData:XMLListCollection = new XMLListCollection(company.department);

company.department返回一个xmllist对象。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  xml list string