Crea un lettore MP3 basato su XML Jazzy

ActionScript 3.0 consente a sviluppatori e progettisti di Flash di realizzare ogni sorta di cose in Flash con relativa facilità. Questo tutorial ti insegnerà come creare il tuo lettore MP3 ActionScript 3.0 con spettro sonoro, copertine degli album, cambia colori e visualizzazione delle informazioni sul brano.




Passo 1

Inizia creando un nuovo documento ActionScript 3.0. Imposta la dimensione dello stage su 600px x 600px e 30 FPS. Ho scelto # 333333 come colore di sfondo.

Passo 2

Vai a File> Importa> Importa nella libreria ... e importa un'immagine (ho modificato parte di un iPod da free4illustrator.com per questo esempio. Dovresti usare un formato .png invece del formato .jpg per sfruttare la trasparenza per il tuo oggetto.). Dopo aver importato l'immagine, apri la tua libreria (Ctrl + L) e trascina il .png sullo stage.

Passaggio 3

Seleziona l'immagine e convertila in un simbolo di clip filmato (F8). Chiamalo "Ipod" o un altro nome se preferisci. Ho scelto l'angolo in alto a sinistra come punto di registrazione.

Passaggio 4

Fai doppio clic sul simbolo del MovieClip "Ipod" per inserire la sua timeline. Assicurati di essere all'interno del Movie Clip e non in "Scena 1".

Passaggio 5

Nella barra della Timeline, inserisci un Nuovo Livello sopra il livello "IpodBody" e chiamalo "Livello Pulsanti". Inseriremo tutti i simboli dei pulsanti in questo livello.

Passaggio 6

Utilizzare lo strumento Rettangolo, # 00ff00 come colore di riempimento e incolore come il colore del tratto. Non abbiamo bisogno di un tratto qui e infatti, il colore di riempimento può essere qualsiasi colore che ti piace, non sarà mostrato nel risultato finale. Disegna una forma sopra l'icona precedente, simile alla seguente:

Passaggio 7

Converti la forma che hai appena disegnato in un Button Symbol (F8) e chiamalo "prev" come mostrato nell'immagine qui sotto:

Passaggio 8

Assegna al simbolo del pulsante "prev" un nome di istanza. L'ho chiamato "prevBtn" e ho cambiato lo stile colore in alfa con lo 0%.

Passaggio 9

I seguenti passaggi necessiteranno dello stesso simbolo Button del simbolo del pulsante "prev". Copia il simbolo del pulsante "prev" e incollalo sull'icona "Avanti" sulla tua bitmap. Per duplicare questo simbolo, vai alla barra delle proprietà e fai clic su "Scambia". Apparirà una finestra simbolo di scambio, a quel punto sarà necessario fare clic su "Duplica simbolo" (assicurarsi di scegliere il simbolo del pulsante "prev"). Chiamalo "next".

Passaggio 10

Ora abbiamo un nuovo simbolo che è simile al simbolo del pulsante "prev", ma denominato "next". Assegna a questo simbolo il nome di istanza di "nextBtn". Lo stile colore rimane alfa 0%.

Passaggio 11

Ripeti i punti 9 - 10 duplicando il simbolo "prev" per rendere i simboli dei pulsanti "play", "pause" e "stop". Assegna rispettivamente i nomi di istanza di "playBtn", "pauseBtn" e "stopBtn".

Passaggio 12

Inserisci un nuovo livello sopra "Buttons Layer" e chiamalo "Testo".

Passaggio 13

Disegna una casella di testo simile all'immagine mostrata sotto nel livello "Testo". Impostare "Testo dinamico" come tipo di testo, assegnare il nome dell'istanza "titleTxt", il carattere del carattere Arial, la dimensione del carattere impostata su 12px e grassetto, il colore bianco (#ffffff) e allineato al centro.

Passaggio 14

Crea un'altra casella di testo appena sotto la casella di testo "titleTxt". Imposta questa nuova casella di testo come Testo dinamico, assegnagli il nome di un'istanza di "artistTxt", con il tipo di carattere Arial, la dimensione del carattere impostata su 10px, il colore bianco (#ffffff) e, di nuovo, allineato al centro.

Passaggio 15

Inserisci un nuovo livello sopra il livello "Testo" e chiamalo "Cambia colore".

Passaggio 16

Utilizzare lo strumento Rettangolo e impostare # ff0000 come colore di riempimento. Disegna un piccolo quadrato di 14px X 14px nell'angolo in alto a destra dello schermo iPod e convertilo in un simbolo Button (F8) con un nome di "rosso". Dagli un nome istanza di "redBtn".

Passaggio 17

Ripeti il ​​passaggio 16 e crea altri due quadrati. Riempi un quadrato con # ffff00, chiamalo "giallo" e assegna un nome di istanza di "yellowBtn". Riempi l'altro quadrato con # 66ccff, chiamalo "blue" con un nome di istanza di "blueBtn". Puoi impostarlo su qualsiasi colore che ti piace, consentirà all'utente di cambiare il colore dello spettro sonoro.

Passaggio 18

Inserisci un nuovo livello sopra il livello "Color Changer" e chiamalo "ActionScript Layer".

Passaggio 19: iniziare lo script

Da questo momento in poi, giocheremo con ActionScript 3.0. Sul primo Keyframe di "Actionscript Layer" premi F9. Apparirà una finestra di azione. Inseriremo il nostro script in questa finestra più tardi.

Passaggio 20: impostazione delle variabili

Per prima cosa, dobbiamo dire a Flash cosa contiene l'iPod Player e le sue proprietà. Ci sono diverse variabili di cui abbiamo bisogno. Quando Flash è stato caricato completamente, è necessario che inizi a funzionare. La funzione "Loaded" inizierà immediatamente. Il caricatore caricherà un file XML, il cui percorso è indicato in "URLRequest" del "loader". Creeremo il file "musiclist.xml" per questo iPod Player in seguito.

 var musicReq: URLRequest; var thumbReq: URLRequest; musica var: Sound = new Sound (); var sndC: SoundChannel; var currentSnd: Sound = music; var position: Number; var currentIndex: Number = 0; var songPaused: Boolean; var songStopped: Boolean; var lineClr: uint; var changeCl: Boolean; var xml: XML; var songList: XMLList; var loader: URLLoader = new URLLoader (); loader.addEventListener (Event.COMPLETE, Loaded); loader.load (new URLRequest ("musiclist.xml"));

Passo 21 - Titolare di album art

Successivamente, creeremo la copertina dell'album che verrà visualizzata sullo schermo di iPod Player. Il seguente script indica le coordinate della copertina dell'album, che sarà conservata in un simbolo di clip filmato.

 var thumbHd: MovieClip = new MovieClip (); thumbHd.x = 50; thumbHd.y = 70; addChild (thumbHd);

Passaggio 22: definire la funzione "caricata"

Ora definiamo la funzione "Caricato". Vogliamo andare all'XML e recuperare l'URL della canzone da riprodurre nel lettore. Quando il brano è caricato, verrà riprodotto immediatamente e la copertina dell'album verrà caricata contemporaneamente. Quando la canzone ha finito di suonare, inizierà a suonare il brano successivo.

 function Loaded (e: Event): void xml = new XML (e.target.data); songList = xml.song; musicReq = new URLRequest (songList [0] .url); thumbReq = new URLRequest (songList [0] .thumb); music.load (musicReq); sndC = music.play (); titleTxt.text = songList [0] .title; artistTxt.text = songList [0] .artist; loadThumb (); sndC.addEventListener (Event.SOUND_COMPLETE, nextSong); 

Passaggio 23: definire la funzione "loadThumb"

Ora definiremo la funzione "loadThumb". Quando il pollice è caricato, dirà a Flash di avviare la funzione "thumbLoaded". Questa funzione aggiungerà un filmato contenente la copertina dell'album.

 function loadThumb (): void var thumbLoader: Loader = new Loader (); thumbReq = new URLRequest (songList [currentIndex] .thumb); thumbLoader.load (thumbReq); thumbLoader.contentLoaderInfo.addEventListener (Event.COMPLETE, thumbLoaded);  function thumbLoaded (e: Event): void var thumb: Bitmap = (Bitmap) (e.target.content); titolare var: MovieClip = thumbHd; holder.addChild (pollice); 

Passaggio 24: indicare "EventListener" dei pulsanti

Qui ho affermato che i pulsanti che abbiamo creato hanno le loro rispettive funzioni. Per consentire agli utenti di fare clic sul pulsante ed eseguire la funzione, utilizziamo "MouseEvent.CLICK". Tutte le funzioni dei rispettivi pulsanti saranno menzionate nei prossimi passaggi.

 prevBtn.addEventListener (MouseEvent.CLICK, prevSong); nextBtn.addEventListener (MouseEvent.CLICK, nextSong); playBtn.addEventListener (MouseEvent.CLICK, playSong); pauseBtn.addEventListener (MouseEvent.CLICK, pauseSong); stopBtn.addEventListener (MouseEvent.CLICK, stopSong);

Passaggio 25: definire la funzione "prevSong"

Funzione "prevBtn" (pulsante precedente), definire "prevSong":

 function prevSong (e: Event): void if (currentIndex> 0) currentIndex--;  else currentIndex = songList.length () - 1;  var prevReq: URLRequest = new URLRequest (songList [currentIndex] .url); var prevPlay: Sound = new Sound (prevReq); sndC.stop (); titleTxt.text = songList [currentIndex] .title; artistTxt.text = songList [currentIndex] .artist; sndC = prevPlay.play (); currentSnd = prevPlay; songPaused = false; loadThumb (); sndC.addEventListener (Event.SOUND_COMPLETE, nextSong); 

Passaggio 26: definire la funzione "nextSong"

funzione "nextBtn" (pulsante Avanti), definire "nextSong":

 function nextSong (e: Event): void if (currentIndex < (songList.length() - 1)) currentIndex++;  else  currentIndex = 0;  var nextReq:URLRequest = new URLRequest(songList[currentIndex].url); var nextPlay:Sound = new Sound(nextReq); sndC.stop(); titleTxt.text = songList[currentIndex].title; artistTxt.text = songList[currentIndex].artist; sndC = nextPlay.play(); currentSnd = nextPlay; songPaused = false; loadThumb(); sndC.addEventListener(Event.SOUND_COMPLETE, nextSong); 

Passaggio 27: definire la funzione "playSong"

"playBtn" (funzione Play button), definire "playSong":

 function playSong (e: Event): void if (songPaused) sndC = currentSnd.play (posizione); songPaused = false;  else if (songStopped) sndC = currentSnd.play (posizione); songStopped = false;  else if (! sndC) sndC = currentSnd.play (posizione); 

Passaggio 28: definire la funzione "pauseSong"

"pauseBtn" (funzione Pause button), definire "pauseSong":

 function pauseSong (e: Event): void if (sndC) position = sndC.position; sndC.stop (); songPaused = true; 

Passaggio 29: definire la funzione "stopSong"

funzione "stopBtn" (pulsante Stop), definire "stopSong":

 function stopSong (e: Event): void sndC.stop (); posizione = 0; songStopped = true; 

Ora abbiamo creato i controlli del giocatore.

Passaggio 30: indicare "EventListener" dei pulsanti colorati

I pulsanti creati nei passaggi 15-17 non sono inutili. Ora dobbiamo dire a Flash qual è il loro ruolo all'interno del Player:

 redBtn.addEventListener (MouseEvent.CLICK, changeRed); yellowBtn.addEventListener (MouseEvent.CLICK, changeYellow); blueBtn.addEventListener (MouseEvent.CLICK, changeBlue);

Passaggio 31: definire le funzioni dei pulsanti colorati

Ogni pulsante colorato ha la sua rispettiva funzione. "changeRed" imposta la linea dello spettro su "0xFF0000" (rosso). "changeYellow" lo imposterà su "0xFFFF00" (giallo) e "changeBlue" imposterà "0x66CCFF" (ciano). Vogliamo anche che Flash sappia che quando clicchiamo su Colore rosso, erediterà il 100% di opacità, mentre agli altri verrà dato il 50% di opacità

Nota: in ActionScript 3.0, 100% = 1, 10% = 0,1 e così via.

Tutti i pulsanti colorati avranno questa funzione, quindi è necessario specificare l'opacità del pulsante in ciascuna funzione.

 function changeRed (e: Event): void lineClr = 0xFF0000; changeClr = true; redBtn.alpha = 1; yellowBtn.alpha = 0.5; blueBtn.alpha = 0,5;  function changeYellow (e: Event): void lineClr = 0xFFFF00; changeClr = true; redBtn.alpha = 0.5; yellowBtn.alpha = 1; blueBtn.alpha = 0,5;  function changeBlue (e: Event): void lineClr = 0x66CCFF; changeClr = true; redBtn.alpha = 0.5; yellowBtn.alpha = 0.5; blueBtn.alpha = 1; 

Passaggio 32: imposta il colore predefinito dello spettro

Ora impostiamo il colore predefinito della linea. Scelgo Rosso come predefinito, puoi usare qualsiasi colore tu voglia.

 if (! changeClr) lineClr = 0xFF0000; redBtn.alpha = 1; yellowBtn.alpha = 0.5; blueBtn.alpha = 0,5; 

Passo 33 - Disegna lo spettro

L'ultima parte del nostro Actionscript; vogliamo che Flash elabori lo spettro della canzone. "lineClr" in "lineStyle" è una variabile all'interno del pulsante del colore nel passaggio 31. "for (var i: uint = 30; i<280; i++)" stated the starting x coordinate of the line and the end coordinate of the line.

In "var num: Number = ba.readFloat () * 50 + 170;" il 50 consente a Flash di moltiplicare il Float nella song e 170 è la coordinata y dello spettro.

 var ba: ByteArray = new ByteArray (); addEventListener (Event.ENTER_FRAME, drawl); function drawl (e: Event): void graphics.clear (); graphics.lineStyle (1, lineClr, 0.5); graphics.moveTo (30, 150); SoundMixer.computeSpectrum (BA); per (var i: uint = 30; i<280; i++)  var num:Number = ba.readFloat()*50 + 170; graphics.lineTo(i, num);  

Passaggio 34: creare l'XML

Titolo e Artista saranno mostrati nel nostro giocatore più tardi. "" e ""sono i percorsi della copertina dell'album e della canzone, XML può essere creato facilmente (puoi usare Blocco note per digitare il seguente codice e Salva come file .XML). Devi salvarlo come" musiclist.xml "perché è così che siamo vi si è riferito all'interno del Actionscript del Player.

   La massa Era pics / era.jpg canzoni / themass.mp3   Dr.No tema  -  pics / drno.jpg canzoni / drno.mp3  

Passaggio 35: crea la copertina dell'album

Crea album per le canzoni. La dimensione consigliata è 65 px x 65 px; si adatterà bene allo schermo.

Conclusione

Metti alla prova il tuo filmato (Ctrl + Invio) per verificare il risultato. Avrai il tuo lettore iPod flash! Puoi usarlo come lettore musicale per il tuo sito web; modifica l'elenco musicale come desideri. Tocca a voi. Vai avanti e sperimenta, se hai dei risultati fantastici, assicurati di condividerli con noi.

Spero che questo tutorial ti sia piaciuto, grazie per la lettura!