===========main.mxml================
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="init()" viewSourceURL="srcview/index.html">
<mx:HTTPService id="getservice" url="mic.xml" result="getresult(event)"/>
<mx:Script>
<![CDATA[
import mx.controls.Alert;
import mx.collections.ArrayCollection;
import mx.rpc.events.ResultEvent;
private var channel:SoundChannel;
[Bindable]
private var picArray:ArrayCollection;
private var micArray:ArrayCollection;
[Bindable]
private var index:Number=0;
private var micindex:Number=0;
private var sound:Sound;
private var time:Timer;
private function init():void
{
getservice.send();
// time=new Timer(60000*3);
// time.addEventListener(TimerEvent.TIMER,miclisten);
// time.start();
var load:URLLoader=new URLLoader();
load.addEventListener(Event.COMPLETE,piclisten);
load.load(new URLRequest("pic.xml"));
}
private function piclisten(event:Event):void
{
var xml:XML=new XML(event.target.data);
trace(xml.children().length());
picArray=new ArrayCollection();
for(var i:Number=0;i<xml.children().length();i++)
{
var o:Object=new Object();
o.ImageUrl=xml.pic[i].imageUrl;
picArray.addItem(o);
}
}
private function getresult(event:ResultEvent):void
{
micArray=event.result.mics.mic;
}
private function nextpage():void
{
if(index==picArray.length-1)
{
index=0;
}else
{
index++;
}
}
private function beforpage():void
{
if(index==0)
{
index=picArray.length-1;
}else
{
index--;
}
}
private function beforsong():void
{
if(micindex==0||micbutton.label=="播放音乐")
{
return;
}
micindex--;
playmic();
}
private function nextsong():void
{
if(micindex==micArray.length-1||micbutton.label=="播放音乐")
{
return;
}
micindex++;
playmic();
}
private function palysong():void
{
if(micbutton.label=="播放音乐")
{
playmic();
micbutton.label="暂停音乐";
}else
{
micbutton.label="播放音乐";
if(channel!=null)
{
channel.stop();
channel=null;
return;
}
}
}
// private function miclisten(event:TimerEvent):void
// {
// Alert.show(micindex.toString());
// if(micindex==2)
// {micindex=0}
// palysong();
// Alert.show(micindex.toString());
// micindex++;
//
// }
private function playmic():void
{
if(channel!=null)
{
channel.stop();
channel=null;
}
var re:URLRequest=new URLRequest(micArray.getItemAt(micindex).micUrl);
sound=new Sound(re);
channel=sound.play();
}
]]>
</mx:Script>
<mx:Panel x="230" y="21" width="891" height="637" layout="absolute" title="FLEX Electronic Album" fontSize="20" fontFamily="Courier New" color="#870DE4">
<mx:Image x="10" y="10" width="853" height="525" source="{picArray.getItemAt(index).ImageUrl}"/>
<mx:Button x="10" y="543" label="上一页" id="before" click="beforpage()"/>
<mx:Button x="210" y="543" label="下一页" id="after" click="nextpage()"/>
<mx:Button x="381.5" y="543" label="播放音乐" color="#06000A" click="palysong()" id="micbutton"/>
<mx:Button x="570" y="543" label="上一首" click="beforsong()"/>
<mx:Button x="774" y="543" label="下一首" click="nextsong()"/>
</mx:Panel>
</mx:Application>
==================mic.xml==============
<?xml version="1.0"?>
<mics>
<mic>
<micUrl>1.mp3</micUrl>
</mic>
<mic>
<micUrl>2.mp3</micUrl>
</mic>
<mic>
<micUrl>3.mp3</micUrl>
</mic>
<mic>
<micUrl>4.mp3</micUrl>
</mic>
<mic>
<micUrl>5.mp3</micUrl>
</mic>
</mics>
====================pic.xml===============
<?xml version="1.0"?>
<pics>
<pic>
<imageUrl>1.jpg</imageUrl>
</pic>
<pic>
<imageUrl>2.jpg</imageUrl>
</pic>
<pic>
<imageUrl>3.jpg</imageUrl>
</pic>
</pics>
====================效果图===================