Arama butonu
Bu konudaki kullanıcılar: 1 misafir
5
Cevap
750
Tıklama
0
Öne Çıkarma
actionscript3 xmlden veri dosyası okuma sorunu yardım?? :(
R
18 yıl (284 mesaj)
Yüzbaşı
Konu Sahibi

basit bir sliteshow hazırlamak üzere oluşturmak istediğim kodda,
xml dosyasını yukledikten sonra verileri değişkene aktarıp, farklı çalışma alanlarında nasıl kullanabilirim


var xmlNesnesi:XML = new XML() 
var xmlURL:String = "resimler.xml"
var xmlNesnesiURL:URLRequest = new URLRequest(xmlURL)
var xmlYukleyici:URLLoader = new URLLoader(xmlNesnesiURL)
var resimler_dizi:Array = new Array ()


xmlYukleyici.addEventListener("complete", xmlYuklendi)
function xmlYuklendi(event:Event):*{
xmlNesnesi=XML(xmlYukleyici.data)
xmlNesnesi.ignoreComments=false
xmlNesnesi.ignoreWhitespace=true
for each (var i in xmlNesnesi.resim){

resimler_dizi.push (i.@path)


}
trace(resimler_dizi[1]) // burada trace çalışıyor
}

trace(resimler_dizi[1]) //fonksiyon dışında nasıl trace çalışır ???? amaç resimlerimin yolunu dizideğişkeniyle göstermek


resimler.xml 
<resimler>
<resim path="resimler/1.jpg" />
<resim path="resimler/2.jpg" />
<resim path="resimler/3.jpg" />
<resim path="resimler/4.jpg" />
<resim path="resimler/5.jpg" />
<resim path="resimler/6.jpg" />
</resimler>

DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.

Üye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.

Üye Ol Şimdi Değil





< Bu mesaj bu kişi tarafından değiştirildi reflex -- 12 Mart 2009; 12:13:31 >

U
18 yıl (4994 mesaj)
Binbaşı

Genel bir tavsiye olarak, foruma kod yapıştırırken [code] tagları arasına almayı unutmayınız. Böylelikle kodunuzdaki girintiler (indentation) kaybolmadan, okunur halde foruma taşınmış olur.

Bu kodu çalıştırdığınızda çıktı nasıl oluyor?
fonksiyon dışında da trace gayet güzel çalışır. Ama sizin yanıldığınız nokta şu ki; altta ki trace üsttekinden önce çalışıyor, yani XML henüz yüklenemeden. Üstteki trace ise XML'in yüklenmesinin tamamlanmasını bekleyip ondan sonra çalışıyor, dolayısıyla düzgün çalışıyor.

Eğer alttaki trace kodunu silip, timeline'da 3-5 frame ileriye gidip orada yazarsanız, çalıştığını görürsünüz.


Bu mesaja 1 cevap geldi.
R
18 yıl (284 mesaj)
Yüzbaşı
Konu Sahibi

tavsiyen için teşşekkür ederim tagı koydum , gerçektende birkaç frame ilerde trace çıktısını alabildim
yanlız timelineda moviclip içinde çıktı almıyor bunu nasıl aşabilirim ,

//bu kodları anatimelinedaki cerceve_mc nin birinci framesine yapıştırdım, adresi manuel olarak girince resim yuklenior 
trace (resimler_dizi[1]); // "1120: Access of undefined property resimler_dizi." hatası veriyor
var resimler_dizi_string:String = resimler_dizi[1];
var img:ImageLoaderAbs = new ImageLoaderAbs(resimler_dizi_string,50,50,0.1);
addChild(img);


actionscript3 de resimler_dizi[1] i değişkene atayıp nasıl global yapabilirim yada varmı öyle bir yol ?


Bu mesaja 1 cevap geldi.
R
18 yıl (284 mesaj)
Yüzbaşı
Konu Sahibi

aslında adetim bir şeyi bulanakadar kafamı patlatmak :) ama hiç zamanım yok pazartesi işe başlıyorum biran önce halletmem lazım bunu, yardımlarınınızı esirgemeyin lütfen :DD


Bu mesaja 1 cevap geldi.
U
18 yıl (4994 mesaj)
Binbaşı

MovieClip içinden Ana Timeline'daki değişkenlere ulaşmak için;

MovieClip(root).degiskenAdi


* Herhangi bir şeyin (XML, resim, SWF dosyası vs.) yüklenmesini beklemek için birkaç frame ileriye yazmak doğru bir kullanım değildir. Yazdığınız flash internet'e çıktığında bir XML'in yüklenmesi birkaç frame'den daha uzun süre alabilir, bu da sizin kodunuzun patlaması anlamına gelir. Bu yüzden doğru kullanım, URLLoader (ya da Loader, ya da her neyse) sınıfının Event.COMPLETE olayını dinlemektir.

** Hayırlı işler





< Bu mesaj bu kişi tarafından değiştirildi un.real -- 13 Mart 2009; 9:26:32 >
Bu mesaja 1 cevap geldi.
R
18 yıl (284 mesaj)
Yüzbaşı
Konu Sahibi

MovieClip(root).degiskenAdi
işeyaradı kodun içinde ama genelkodları birazdaha geliştirmem lazım
timeline daki tween in içindeki mc de işe yarıyor fakat tweenin 2. çalışmasında çıktı veriyor ilkinde undefined
sonucu yazarım buraya
**teşşekür ederim :)



DH Mobil uygulaması ile devam edin. Mobil tarayıcınız ile mümkün olanların yanı sıra, birçok yeni ve faydalı özelliğe erişin. Gizle ve güncelleme çıkana kadar tekrar gösterme.