| Preloader - Yükleniyor Yapma |
|
|
|
| Editör tarafından yazıldı. |
| Pazar, 11 Ekim 2009 22:58 |
|
Merhabalar arkadaşlar ,bu dersimiz'de bir Preloader hazırlıyacağız. Önyükleyici Flash programını kullanmaya yeni başlayanların en çok zorlandıkları konulardan biridir ve karşılaştıkları ilk karmaşık kodlama diyebiliriz. Nekadar basit olduğunu makalemizin sonunda sizlerde göreceksiniz.
Ülkemiz şartlarında internet hızının düşük olması nedeni ile çalışmalarımızın kullanıcı ekranına geç ulaşması, ön yükleyicilerin önemini artırmaktadır. Peki önyükleyici ne işe yarar.Çalışmamız yüklenirken kullanıcıya sitemiz hakkında bilgiler sunabilir,ufak animasyonlarla site devamlılığını sağlayabiliriz. Bu bilgileri verdikten sonra basit bir önyükleyici yapalım. Flash programınızı açın ve file > new’i (ctrl+N)tıklayın. Shift +F2 tuşlarına basıp yeni bir scene oluşturun. Sahneye birtane dynamic text oluşturun properties bölümünden (ctrl+F3) instance name alanına yuzde_txt yazın. Text içerik rengini siyah seçin. Timeline da ilk frame secip window>action(F9) t action panelini açıp aşağıdaki kodları yazalım. onEnterFrame=function(){ var toplamBoyut:Number=_root.getBytesTotal(); var yuklenenBoyut:Number=_root.getBytesLoaded(); if(yuklenenBoyut==toplamBoyut){ delete onEnterFrame play(); }else{ var yuzde:Number=Math.floor((yuklenenBoyut/toplamBoyut)*100); yuzde_txt.text=yuzde } } stop(); İlk önce bahsi gecen kodların açıklamalarını yapalım. onEnterFrame :Bir movie clip olay denetleyicisidir.Timeline çizgisinin her frame geçişinde çağrılır. function() :Başlı başına bir konudur.Kısaca, sürekli kulanabileceğimiz kod bloglarını barındıran grublar olarak tanımlayabiliriz. getBytesTotal() :MovieClip sınıfının bir metodudur.Toplam dosya boyutunu byte olarak gösterir. getBytesLoaded() :MovieClip sınıfının bir metodudur.O ana kadar yüklenen dosya boyutunu byte olarak gösterir. if :if değimi koşul belirtir. Koşulun gerçekleşmesi durumda bloğuna ait kodlar çalışacaktır. else:if değimi ile belirtiğimiz koşulun gerçekleşmemesi durumunda else değiminin altındaki satırlar çalışacaktır Math.floor:Sayıların ondalık kısımlarını yok sayar. Şimdi kodların çalışma prensibini inceleyelim. onEnterFrame olay denetleyicisi sayesinde fonksiyon altındaki satırların sürekli güncellenmesi sağlanıyor.Ana sahnemizdeki (_root)toplam dosya boyutunu toplamBoyut değişkenine atıyoruz.Yüklenen dosya boyutunu da yuklenenBoyut değişkenine atıyoruz..if değimi ile koşul belirtiyoruz.Eğer bu iki değişken birbirine eşitse alt satırın çalışmasını sağlıyoruz.Alt satırımızda ise onEnterFrame olay denetleyicisini delete ile kaldırıyoruz ki system kaynaklarını zorlamasın.Play() komutu ile çalışmalarımızın bulunduğu scene 2 ye geçiyoruz. İf değimi ile sağladığımız koşul gerçekleşmezse ,else değiminin altındaki satırlar çalışacaktır. var yuzde:Number=Math.floor((yuklenenBoyut/toplamBoyut)*100); yuzde_txt.text=yuzde Bu satırı matematiği iyi olanlar hemen kavrayacaklardır.Yinede ben değinmek istiyorum.Burada bir oranlama söz konusudur toplamBoyutta yuklenenBoyut kadar yükleniyorsa,100’de ne kadar yüklenir .Bu matematik işleminden dönen sonuçların ondalık kısımlarını Math sınıfının flor metodu ile kaldırıyoruz,bu sayede if şartı gerçekleşene kadar elimizde 1-den 100 e kadar tekrar eden sayıları elde ediyoruz. onEnterFrame olay denetleyicisi sayesinde kod satırları her çalıştırıldığında , bu sayıları yuzde_txt’mize textfield sınıfının text özelliğini kullanarak yazdırıyoruz.En son olarakata stop() komutu ile flash movienin çalışır çalışmaz oynamamasını sağlıyoruz.Eğer yukleme gerçekleşirse play() komutu ile timeline çizgimiz sahne 2 ye geçecektir. Ctrl +Enter tuş kombinasyonu ile çalışmamızı test edelim. Sahnede 100 kadar sayan sayıları göremeyeceksiniz. Ön yükleyicimizi test etmek için internet ortamına atmalısınız ya da ctrl +enter tuşlarına bastıktan sonra çıkan animasyon penceresinden wiew>Sımulate Downloand tıklarsanız önyükleyiciyi test edebilirsiniz. Korkulacak hiçbir şey olmadığını hep beraber gördük. En alt seviyede anlatmaya çalıştım. Sonraki makalemizde animasyonlu ön yükleyiciler nasıl yapılır?Karşılaşılan sorunlar nelerdir?Bu soruların cevaplarını hep birlikte çözeceğiz. |
| Son Güncelleme: Perşembe, 29 Ekim 2009 14:12 |






