game.xml(請放在resource/config/game.xml)
<?xml version="1.0" encoding="utf-8" ?>
<game>
<name>Edwin Game</name>
<stage width="100" height="100"></stage>
</game>
解析xml
var request = new egret.HttpRequest();
request.responseType = egret.HttpResponseType.TEXT; // 回傳類型為文字
request.addEventListener(egret.Event.COMPLETE, (e) => {
var request = e.currentTarget;
let source:string = request.response;
let game:egret.XML = egret.XML.parse(source);
egret.log(game.name, game.nodeType); // game 1
let gameName = game.children[0];
let nameText:egret.XMLText = gameName.children[0];
egret.log(gameName.name,gameName.nodeType); // name 1
egret.log(nameText.nodeType, nameText.text); // 3 "Edwin Game"
let gameStage = game.children[1];
egret.log(gameStage.name, gameStage.nodeType); // stage 1
egret.log(gameStage.attributes); // {width: "100", height: "100"}
egret.log(parseInt(gameStage.attributes.width), parseInt(gameStage.attributes.height)); // 100 100
// xml 讀進的數值是字串, 請使用 parseInt 或 parseFloat 將自傳轉成數值
// nodeType 節點類型,1:XML,2:XMLAttribute,3:XMLText (官方沒有實作 XMLAttribute)
}, this);
request.open('resource/config/game.xml', egret.HttpMethod.GET);
request.send();
沒有留言:
張貼留言