執行個體4:
利用List組件做個mp3播放清單。
建立一個xml文檔,在記事本中輸入下面的代碼,然後儲存為 xml-004.xml。
複製代碼 代碼如下:<?xml version="1.0" encoding="gb2312"?>
<mp3List>
<mp3 path="jmzcg.mp3">阿桑-寂寞在唱歌</mp3>
<mp3 path="jmjywsls.mp3">寂寞是因為思念誰</mp3>
<mp3 path="szwspdxd.mp3">老狼-睡在我上鋪的兄弟</mp3>
<mp3 path="qf.mp3">誓言-求佛</mp3>
<mp3 path="xyzth.mp3">下一站天后</mp3>
<mp3 path="nswdxfm.mp3">伊能靜-你是我的幸福嗎</mp3>
<mp3 path="aqfx.mp3">愛情複興(容祖兒)</mp3>
<mp3 path="qrlg.mp3">水木年華-秋日戀歌</mp3>
<mp3 path="qnyh.mp3">張國榮-倩女幽魂</mp3>
<mp3 path="a.mp3">一首很棒的英文歌(酒吧裡常放)</mp3>
</mp3List>
xml結構:
<mp3List>xml文檔中的頂層節點。
<mp3 path="jmzcg.mp3">阿桑-寂寞在唱歌</mp3>頂層節點下的子級節點,path是mp3節點下的屬性,“阿桑-寂寞在唱歌”是mp3的節點值。
開啟Flash建立一個Flash文檔,大小為200*150,儲存到剛才的xml文檔的目錄中,命名為 xml-04.fla。建立2個圖層分別命名Actions、cont ,cont層中拉一個List組件到第一幀.大小為200*150,執行個體名為mp3_list,Actions層第一幀輸入下面代碼:
複製代碼 代碼如下://xml-004.fla.
//使用系統編碼.防止亂碼.
System.useCodepage = true;
//執行個體化一個xml對象.
var myxml:XML = new XML();
//分析時忽略xml文檔中的空格.
myxml.ignoreWhite = true;
//載入xml-004.xml文檔.
myxml.load("xml-004.xml");
//調用XML.onLoad事件.
myxml.onLoad = function(success:Boolean)
{
//如果載入成功,success=true;否則success=false;
if (success) {
trace("載入成功!");
//用一個數組來引用頂層節點中子級節點的數組.
var child_arr:Array = myxml.firstChild.childNodes;
//這個for遍曆的是頂層節點下的子級節點.
for (var i = 0; i<child_arr.length; i++) {
//將歌曲添加到List組件中.
//child_arr[i].firstChild.nodeValue這個是xml節點的節點值.
//child_arr[i].attributes.path這個是xml節點下的path屬性.
mp3_list.addItem({label:(i+1)+"."+child_arr[i].firstChild.nodeValue, data:child_arr[i].attributes.path});
}
} else {
trace("載入失敗!");
}
};
//listEvent函數是執行List組件中change事件
function listEvent():Void
{
//這個就是歌曲地址.用Sound類的loadSound方法就可以播放歌曲了.例:mysound.loadSound(mp3_list.selectedItem.data);詳細請看協助文檔.
trace(mp3_list.selectedItem.data);
}
//添加幀聽器.
mp3_list.addEventListener("change", listEvent);
打包檔案下載