通过HTTPService获取XML数据
在浏览器中输入:http://www.flexgrocer.com/units.xml,可以看到XML格式文档,将使用HTTPService获取该xml中的数据。
打开前面完成的DataEntry.mxml文件,代码如下
在<mx:Script>中导入两个类,代码如下
在<mx:Script>下面添加<mx:HTTPServic>标签,代码如下
当id为unitRPC的httpservice执行一个send方法的时候,会从url指定的xml文件里面返回该xml的数据,成功返回以后执行unitPRCResult()函数。
在<mx:Script>里面添加unitPRCResult函数,代码如下
在<mx:Application>中添加creationComplete事件,代码如下
creationComplete="unitRPC.send()"
当页面中所有的控件创建完成以后,执行creationComplete事件,调用unitRPC的send方法,调用HTTPService。ResultEvent中的result就能得到xml中的数据。
将HTTPService数据填入ArrayCollection
ArrayCollection是将数据填入到一个列表块里面,可以作为数据的提供者。
<ms:Script>中添加相关代码,代码如下
这样就把xml中所有的unit节点数据保持到units变量里面。
在控件中使用该units,代码如下
运行结果如下
将数据填入ComboBox控件并用编程方法添加选项
同上,把远程http://www.flexgrocer.com/category.xml文件的内容保存到categories变量中,编写的代码如下
creationComplete="catRPC.send()"
添加ComboBox控件,使用categories数据,代码如下
运行结果如下
在Tree控件中使用XML数据
xml数据来源: http://www.flexgrocer.com/categorizedProducts.xml。
打开前面完成的DataEntry.mxml文件,添加HTTPService,代码如下
添加数据绑定,代码如下
添加tree控件,代码如下
添加populateForm(event)方法,代码如下
添加resetForm()方法,代码如下
此时的DataEntry.mxml文件的代码如下
运行结果如下
获取XML数据并将这些数据转换为自定义类型的ArrayCollection
同上利用HTTPService获取XML数据,转化方法代码如下