您的位置:首页 > 其它

as读取xml文件到flash

2012-11-24 09:31 435 查看
今天来看看flash是怎么分析xml文档,并在flash文件中显示出来的,首页我们来看xml 文件:

<?xml version="1.0" encoding="UTF-8"?>

<channel>

<item>

<title>6场半全场第08032期推荐:罗马德比“和”...</title>

<link>/show.php?id=5</link>

<date>2008-03-22 00:00:00</date>

</item>

<item>

<title>6场半全场第08032期推荐:罗马德比“和”...</title>

<link>/show.php?id=6</link>

<date>2008-03-22 00:00:00</date>

</item>

<item>

<title>6场半全场第08032期推荐:罗马德比“和”...</title>

<link>/show.php?id=7</link>

<date>2008-03-22 00:00:00</date>

</item>

<item>

<title>6场半全场第08032期推荐:罗马德比“和”...</title>

<link>/show.php?id=8</link>

<date>2008-03-22 00:00:00</date>

</item>

<item>

<title>6场半全场第08032期推荐:罗马德比“和”...</title>

<link>/show.php?id=9</link>

<date>2008-03-22 00:00:00</date>

</item>

<item>

<title>6场半全场第08032期推荐:罗马德比“和”...</title>

<link>/show.php?id=10</link>

<date>2008-03-22 00:00:00</date>

</item>

</channel>

上面是我用php生成的xml文档,生成方法到本站去找,有教程.最重要的是as代码了,因为我们这次讲得是as 读出xml文件,所以就是最重要的喽.下面看as的代码,我们在flash里面建一个文件.

//建立xml对象

var myxml = new XML ();

var main:MovieClip = this;

//加载xml文件

myxml.load ("newslist.xml");

//忽略空格

myxml.ignoreWhite = true;//忽略空格 默认为false

//处理xml对象函数

newy = 20;

newx = 20;

mhj = 20;//行距

myxml.onLoad = function (success) {

node = this.firstChild.childNodes;

textNum = node.length;

for (i = 0; i < textNum; i++) {

   var new_mc = main.createEmptyMovieClip ("new_mc" + i, i);

   new_mc._x = newx;

   new_mc._y = newy + (mhj * i);

   new_mc.moveTo (newx,newy);

   new_mc.createTextField ("main",0,0,0,500,20);

   new_mc.main.html = true;

   new_mc.main.wordWrap = true;

   new_mc.main.text = String (myxml.childNodes[0].childNodes[i].childNodes[0].childNodes[0])+"       "+"[" + String (myxml.childNodes[0].childNodes[i].childNodes[2].childNodes[0]) + "]" ;

   trace (new_mc.main.text);

   //设置文字样式

   btntf = new TextFormat ();

   btntf.color = 0x000000;

   btntf.font = "verdana"; //字体型号

   btntf.size = 12;   //字体大小

   new_mc.main.setTextFormat (btntf);

   //按钮行为

   new_mc.i = i;

   new_mc.onRelease = function () {

    var who:Number = this.i;

    var link:String = myxml.childNodes[0].childNodes[who].childNodes[1].childNodes[0];

    trace (link);

    getURL (link, "_blank");

   };

   new_mc.onRollOver = function () {

    who=this.i

    this._y = newy + (mhj * who);

    menutf = new TextFormat ();

    menutf.color = 0xff9900;

    this.main.setTextFormat (menutf);

   };

   new_mc.onRollOut = function () {

    menutf = new TextFormat ();

    menutf.color = 0x0000;

    this.main.setTextFormat (menutf);

   };

}

};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: