Flash MP3 Player yapımı
1 sayfadaki 1 sayfası
Flash MP3 Player yapımı
Flash ve XML kullanarak bir mp3 player yapmayı öğrenelim. Dersimize Başlıyoruz.
Öncelikle uygun bir boyutta yeni bir sayfa açıyoruz.
Adım 1:
Layerimizin adını kontroller diye değistirin. Sahnemize 4 adet buton ekleyelim ve instanceName kısmını aşağıdakiler gibi belirleyelim.
btn_play
btn_stop
btn_prev
btn_next
Butonları ekledikten sonra bir tane de textfield ekleyelim. Bunun text type türünü dynamic yapıyoruz ve bu textfield'imizin
instanceName'sini display_txt yapıyoruz.
Yeni bir layer ekleyin ve adını ActionScript yapın.
Adım 2: XML
Yeni bir not defteri açın ve içine aşağıdaki kodları yazın:
<?xml version='1.0' encoding='utf-8'?>
<songs>
<song />
</songs>
Bunu yaptıktan sonra müzik eklemeye geldi sıra, aşağıdaki tag'lar sayesinde çalacak müzikleri XML'de belirliyoruz.
<song name="Pixel2Life Soundtrack 01" file="music/p2l_01.mp3" />
<song name="Twodded Soundtrack 01" file="music/twod_01.mp3" />
Üsteki tag'lar hakkında bilgi verelim:
<song name="dynamic textimizde müzik ismi yazacak" file="klasöradı/muzikismi.mp3" />
Burada klasör adını kaldırabilirsiniz tabi
Yani not defterimizdeki yazı şu şekilde olacak:
<?xml version='1.0' encoding='utf-8'?>
<songs>
<song name="Pixel2Life Soundtrack 01" file="music/p2l_01.mp3" />
<song name="Twodded Soundtrack 01" file="music/twod_01.mp3" />
</songs>
Bunu playlist.xml olarak kayıt ediyoruz.
Adım 3: ACTİONSCRİPT:
Aşagıdaki kodları ActionScript layerimizin 1.framesine ekliyoruz:
stop();
playlist= new XML();
playlist.ignoreWhite=true;
playlist.onload = function (success) {
if(success) {
_global.songname = [];
_global.songfile = [];
for (var i=0; i<playlist.firstChild.childNodes.length; i++) {
_global.songname = playlist.firstChild.childNodes[i].attributes.name;
_global.songfile[i] = playlist.firstChild.childNodes[i].attributes.file;
trace(songname[i]+" "+songfile[i]); }
_root.createEmptyMovieClip("sound_mc",1);
_root.sound_mc.sound_obj = new Sound();
_global.song_nr = random(songfile.length); _root.sound_mc.songStarter(songfile[song_nr],songname[song_nr]);
} else {display_txt.text="Error Loading XML"}
}
MovieClip.prototype.songStarter = function (file, name) {
this.sound_obj.loadSound(file,true)
this.onEnterFrame = function () {
if(this.sound_obj.position>0) {
delete this.onEnterFrame;
this._parent.display_txt.text=name;
} else {
this._parent.display_txt.text="loading..."
}
}
this.sound_obj.onSoundComplete = function () {
(song_nr==songfile.length-1)? _global.song_nr=0 : _global.song_nr++;
_root.sound_mc.songStarter(songfile[song_nr],songname[song_nr]);
}
}
btn_play.onRelease = function () {
this._parent.sound_mc.songStarter(songfile[song_nr],songname[song_nr]);
}
btn_stop.onRelease = function() {
this._parent.sound_mc.sound_obj.stop();
}
btn_next.onRelease = function () {
(song_nr==songfile.length-1)? _global.song_nr=0 : _global.song_nr++;
_root.sound_mc.songStarter(songfile[song_nr],songname[song_nr]);
}
btn_prev.onRelease = function () {
(song_nr==0)? _global.song_nr=songfile.length-1 : _global.song_nr--;
_root.sound_mc.songStarter(songfile[song_nr],songname[song_nr]);
}
playlist.load("playlist.xml");
Not: XML dosyanız ile flash dosyanızı aynı yere kayıt edin, aksi takdirde çalışmayacaktır.
Öncelikle uygun bir boyutta yeni bir sayfa açıyoruz.
Adım 1:
Layerimizin adını kontroller diye değistirin. Sahnemize 4 adet buton ekleyelim ve instanceName kısmını aşağıdakiler gibi belirleyelim.
btn_play
btn_stop
btn_prev
btn_next
Butonları ekledikten sonra bir tane de textfield ekleyelim. Bunun text type türünü dynamic yapıyoruz ve bu textfield'imizin
instanceName'sini display_txt yapıyoruz.
Yeni bir layer ekleyin ve adını ActionScript yapın.
Adım 2: XML
Yeni bir not defteri açın ve içine aşağıdaki kodları yazın:
<?xml version='1.0' encoding='utf-8'?>
<songs>
<song />
</songs>
Bunu yaptıktan sonra müzik eklemeye geldi sıra, aşağıdaki tag'lar sayesinde çalacak müzikleri XML'de belirliyoruz.
<song name="Pixel2Life Soundtrack 01" file="music/p2l_01.mp3" />
<song name="Twodded Soundtrack 01" file="music/twod_01.mp3" />
Üsteki tag'lar hakkında bilgi verelim:
<song name="dynamic textimizde müzik ismi yazacak" file="klasöradı/muzikismi.mp3" />
Burada klasör adını kaldırabilirsiniz tabi
Yani not defterimizdeki yazı şu şekilde olacak:
<?xml version='1.0' encoding='utf-8'?>
<songs>
<song name="Pixel2Life Soundtrack 01" file="music/p2l_01.mp3" />
<song name="Twodded Soundtrack 01" file="music/twod_01.mp3" />
</songs>
Bunu playlist.xml olarak kayıt ediyoruz.
Adım 3: ACTİONSCRİPT:
Aşagıdaki kodları ActionScript layerimizin 1.framesine ekliyoruz:
stop();
playlist= new XML();
playlist.ignoreWhite=true;
playlist.onload = function (success) {
if(success) {
_global.songname = [];
_global.songfile = [];
for (var i=0; i<playlist.firstChild.childNodes.length; i++) {
_global.songname = playlist.firstChild.childNodes[i].attributes.name;
_global.songfile[i] = playlist.firstChild.childNodes[i].attributes.file;
trace(songname[i]+" "+songfile[i]); }
_root.createEmptyMovieClip("sound_mc",1);
_root.sound_mc.sound_obj = new Sound();
_global.song_nr = random(songfile.length); _root.sound_mc.songStarter(songfile[song_nr],songname[song_nr]);
} else {display_txt.text="Error Loading XML"}
}
MovieClip.prototype.songStarter = function (file, name) {
this.sound_obj.loadSound(file,true)
this.onEnterFrame = function () {
if(this.sound_obj.position>0) {
delete this.onEnterFrame;
this._parent.display_txt.text=name;
} else {
this._parent.display_txt.text="loading..."
}
}
this.sound_obj.onSoundComplete = function () {
(song_nr==songfile.length-1)? _global.song_nr=0 : _global.song_nr++;
_root.sound_mc.songStarter(songfile[song_nr],songname[song_nr]);
}
}
btn_play.onRelease = function () {
this._parent.sound_mc.songStarter(songfile[song_nr],songname[song_nr]);
}
btn_stop.onRelease = function() {
this._parent.sound_mc.sound_obj.stop();
}
btn_next.onRelease = function () {
(song_nr==songfile.length-1)? _global.song_nr=0 : _global.song_nr++;
_root.sound_mc.songStarter(songfile[song_nr],songname[song_nr]);
}
btn_prev.onRelease = function () {
(song_nr==0)? _global.song_nr=songfile.length-1 : _global.song_nr--;
_root.sound_mc.songStarter(songfile[song_nr],songname[song_nr]);
}
playlist.load("playlist.xml");
Not: XML dosyanız ile flash dosyanızı aynı yere kayıt edin, aksi takdirde çalışmayacaktır.
Similar topics
» Flash ile Hareketli Bulut Yapımı
» Flash Sitemizi Yayınlayalım
» Dürbün Yapımı
» Flash Template Web Site Hazırlama
» Flashta Banner Yapımı
» Flash Sitemizi Yayınlayalım
» Dürbün Yapımı
» Flash Template Web Site Hazırlama
» Flashta Banner Yapımı
1 sayfadaki 1 sayfası
Bu forumun müsaadesi var:
Bu forumdaki mesajlara cevap veremezsiniz