Flex讀取外部XML檔案的四種方法

2021-08-31 22:07:36 字數 2278 閱讀 9467

[quote]本文向大家介紹一下flex讀取外部xml檔案的幾種方法,因為flex支援強大的e4x功能,所以在flex中xml檔案的操作非常簡單。[/quote]

本文和大家重點討論一下flex讀取外部xml檔案的幾種方法,因為flex支援強大的e4x功能,所以在flex中xml檔案的操作非常簡單。下面總結一下常用的讀取xml配置檔案的方法,希望對你有所幫助。

flex讀取外部xml檔案的幾種方法

因為flex支援強大的e4x功能,所以在flex中xml檔案的操作非常簡單。下面,總結一下常用的讀取xml配置檔案的方法:

1使用model標籤形式

首先宣告model標籤:

2使用xml標籤形式

3使用httpservice

privatefunctionresulthandler(event:resultevent):void

有的時候我們希望用xml作為配置檔案來動態配置我們的系統。雖然flexsdk提供了乙個只能用在在mxml檔案中、標籤,這些標籤的source屬性可以讀取外部的xml檔案,但是這樣的方式會使xml檔案嵌入到生成的swf檔案中。這樣做的結果就是發布後即使修改了xml的內容對程式也沒有影響。這樣做沒有達到使用外部xml檔案的目的。要想實現動態讀取xml檔案需要使用到urlloader這個類,這個類位於flash.net包中。

一、建立urlrequest物件

要想使用urlloader讀取外部的xml,必須呼叫urlloader的load()函式。這個函式有乙個引數就是urlrequest,所以必須先建立乙個urlrequest物件。

varurl:urlrequest=newurlrequest("mydata/danxuan.xml");

其中urlrequest的引數必須是乙個有效的url。

二、讀取外部xml

1.建立urlloader物件。

varloader:urlloader=newurlloader();

2.為新建立的物件註冊事件監聽,我們需要監聽的是event.complete事件,這個事件代表讀取xml檔案完成。

loader.addeventlistener(event.complete,oncomplete);

oncomplete是event.complete事件的處理函式,當發生event.complete事件的時候會呼叫這個函式。

3.呼叫load函式

loader.load(url);

引數url就是前面建立的urlrequest物件。

三、事件處理函式oncomplete

函式的完整定義是這個樣子的:

privatefunctiononcomplete(event:event):void{}

面已經把這個函式註冊給urlloader物件的event.complete事件了。當發生event.complete事件時,這個函式就會被呼叫。接下來的問題就是怎麼得到取到的xml資料了。

首先把oncomplete函式的引數event的target屬性轉換成urlloader物件

varresult:urlloader=urlloader(event.target);

然後再把這個物件的data屬性轉換成xml物件

datas=xml(result.data);

這樣就可以把danxuan.xml的內容讀取到了datas中了。

使用這種方式可以動態的讀取xml檔案。取到的內容可以動態配置程式,提供動態的資料來源。至於具體怎樣應用就看自己的需求了。

varurlloader:urlloader=newurlloader();  

urlloader.addeventlistener(event.complete,handleurlloadercompleted);

urlloader.load(newurlrequest("mydata/duanxuan.xml"));

privatefunctionhandleurlloadercompleted(event:event):void

Flex 讀取外 部XML檔案

因為flex 支援強大的 e4x功能,所以 在flex中xml文 件的操作非常簡單 下面,總結一下常用的讀取xml配 置檔案的方法 1 使用model標籤形式 首先宣告model標籤 2 使用xml標籤形式 3 使用httpservice result resulthandler event pri...

Flex 動態讀取外部xml檔案

在flex中xml檔案是使用頻率非常高的,因為在flex中xml檔案的操作非常簡單。有的時候我們希望用xml作為配置檔案來動態配置我們的系統。雖然flexsdk提供了乙個只能用在在mxml檔案中標籤,這個標籤的source屬性可以讀取外部的xml檔案,但是這樣的方式會使xml檔案嵌入到生成的swf檔...

Flex讀取外部XML

1.使用xml標籤讀取外部資料 flex 3 flex 42.使用urlloader private function init void private function oncomplete event event void 如果在編譯過程中出現 無法訪問本地資源。則需要設定編譯引數 use n...