MP3 PREHRAVAC S EKVALIZEROM A XML ZOZNAMOM       as3 , xml


    Tento nie najjednoduchší tutoriál vám ukáže ako vytvoriť MP3 prehrávač s ekvalizérom a xml pridávaním skladieb pre vaše flash aplikácie, ktorý je veľmi ľahko upraviteľný po grafickej stránke. Hlavnými funkciami sú:
  • funkčný zoznam skladieb
  • pridávanie a odoberanie skladieb cez xml
  • visualny ekvalizer
V tomto návode sa nebudem venovať grafickej stránke veci, vzhľad je čisto na vašom vkuse. Budem tu preberať actionscript stránku a funkčnosť celého projektu. Odporúčam si stiahnuť zdrojový súbor. Obsahuje demo pesničky použité na tejto stránke, xml súbor na pridávanie a odoberanie skladieb ako aj zdrojový *.fla súbor. Na konci by ste mali dostať čo sa týka funkčnosti niečo podobné :




    Otvorte nový actionscript 3.0 dokument.Tento bude tri framy dlhý. Všetky komponenty na scéne by mali byť rovnaké na všetkých troch framoch, iba actionscript sa bude líšiť na každom frame. Začneme vložením flash ui komponentu List z knižnice componentov (zmačknite Ctrl+F7 a otvorí sa okno s knižnicou). Nazveme ho ( teda do kolonky instance name napíšeme ) list . Teraz nakreslite malý obĺžnik a skonvertujte ho na movieclip. Ten bude predstavovať stĺpce ekvalizéra. Vstúpte do tohto movieclipu. Vytvorte novú vrstvu s jedním, 10 polícok dlhým framom. Hneď na prvý frame vložte stop(); príkaz v actions panely (F9). Druhá vrstva by mala obsahovať ten malý obdĺžnik. Skopírujte tento obdĺžnik 10 krát, a každý nasledovný frame by mal obsahovať o jeden obdĺžnik viac ako predchádzajúci frame zoradených do stĺpca. Na konci by ste mali dostat na prvom frame jeden obdĺžnik, na druhom dva... na posledom 10 zoradených v stĺpci. Malo by to vyzerať asi takto:



Teraz sa vráťte na scénu1 a skopírujte tento movieclip 5 krat vedľa seba tak aby medzi nimi ostala malá medzera. Nazvite ich (vpíšte do instance name) eqBarLeft1, eqBarRight1, eqBarLeft2, eqBarRight2, eqBarLeft3, eqBarRight3, v tomto poradí. Teraz vytvorte tlačidlo a nazvite ho stop_btn, ten bude fungovať ako tlačidlo na zastavenie prehrávania. Nakoniec vytvorte dynamický text a do instance name vpíšte status_txt, teraz skonvertujte tento text na movieclip a nazvite ho Rtext. Keď to máme všetko pripravené, môžme začať písať samotný actionscript kód. Vytvorte novú vrstvu s troma prázdnymi framami. Vložte nasledovný actionscript kód na prvý znich:



stop();

var myFormat:TextFormat = new TextFormat();
myFormat.color = "0xFFFFFF";

list.setRendererStyle("textFormat", myFormat);


var trackToPlay:String;
var pausePosition:int = 0;
var songURL:URLRequest;
var i:uint;

var myXML:XML = new XML();
var XML_URL:String = "mp3_playlist.xml";
var myXMLURL:URLRequest = new URLRequest(XML_URL);
var myLoader:URLLoader = new URLLoader(myXMLURL);
myLoader.addEventListener("complete", xmlLoaded);


function xmlLoaded(event:Event):void {
	
    
    myXML = XML(myLoader.data);  
   var firstSong:String = myXML..Song.songTitle[0];
   var firstArtist:String = myXML..Song.songArtist[0];
   songURL = new URLRequest("mp3_files/" + firstSong + ".mp3");
   Rtext.status_txt.text = "Now Playing: 1. "+firstSong +" - "+firstArtist;
	     
	for each (var Song:XML in myXML..Song) {
	i++;
	var songTitle:String = Song.songTitle.toString();
	var songArtist:String = Song.songArtist.toString();
	list.addItem( { label: i+". "+songTitle+" - "+songArtist, songString: songTitle, 
												Artist: songArtist, songNum: i } );

	}
	var myArray = new Array (0,0);
    list.selectedIndices = myArray; 
	gotoAndStop(3);
	
}


1/2 DALSIA STRANA