|
对于制作数据量较大的大型城市地图,直接在flash环境中手动创建地名标注内容不仅工作量巨大,而且维护更新非常不便,这样就必须借助外部数据文件来辅助完成其中的地名标注工作。当然,调用数据文件的方法很多,我们这里介绍一种较为简单的,即在flash中调用外部xml数据文件。 既然涉及xml文件,就有必要对xml有一个初步的了解。
一、初识xml
1、什么是xml?
xml 是英文extensible markup language的缩写,中文意为可扩展的标记语言。xml是一套定义语义标记的规则,这些标记将文档分成许多部件并对这些部件加以标识。它也是元标记语言,即定义了用于定义其他与特定领域有关的、语义的、结构化的标记语言的句法语言。
2、xml文件式样
以下为一个xml文件结构,有些类似html语言:
<?xml version="1.0" encoding="utf-8" ?> <countrydata> <state id="range"> <data>0 - 33</data> <color>fed976</color> </state> <state id="range"> <data>34 - 66</data> <color>feb24c</color> </state> <state id="range"> <data>67 - 99</data> <color>fd8d3c</color> </state> </countrydata>
二、flash调用xml文件的方法
flash中的actionscript2.0关于调用xml的全局函数与方法属性较多,以下只介绍本例中涉及的内容: 1、建立xml对象: var myxml = new xml();
2、引用xml文件: myxml.load("data.xml");
3、忽略空格: myxml.ignorewhite = true;/默认的为false
4、处理xml对象的load(xml.load 方法) public load(url:string) : boolean
从指定的 url 中加载 xml 文档,并使用下载的 xml 数据替换指定 xml 对象的内容。该 url 是相对 url,并使用 http 进行调用。加载过程是异步的;它不会在执行 load() 方法后立即结束。
执行 load() 方法时,xml 对象的 loaded 属性被设置为 false。在 xml 数据下载完毕后,loaded 属性被设置为 true,并调用 onload 事件处理函数。直到 xml 数据完全下载后,才开始分析。如果该 xml 对象以前包含任何 xml 树,它们将被放弃。
您可以定义一个在调用 xml 对象的 onload 事件处理函数时执行的自定义函数。
5、处理xml对象的onload(xml.onload 处理函数) onload = function(success:boolean) {}
收到来自服务器的 xml 文档时由 flash player 调用。如果成功接收了 xml 文档,则 success 参数为 true。如果未收到该文档,或从服务器接收响应时出现错误,则 success 参数为 false。默认情况下,此方法的实现不处于活动状态。若要覆盖默认实现,必须指定一个包含自定义动作的函数。
三、实例制作
在初步了解了以上xml的基础后,我们就可以紧接上一例的步骤完 [1] [2] [3] 下一页 |