Soru - Cevap Bölümü
/ Kategori: Programlama
Selamünaleyküm arkadaşlar
öncelikle yapmak istediğim şeyi anlatıyım. Türkiye Haritası olacak. üzerinde illerin isimleri movieclip şeklinde olacak. xmlden hangi illerin isimleri girilmişse o illerin yazıları gözükecek ve bu illere tıklayınca açılacak pencerede xmlde tanımlanmış o ilde bulunan firma isimleri gözükecek. firma isimlerinede tıklayınca firma bilgileri adres, tel numarası gözükecek.
Benim izlediğim yöntemde öncelikle tüm illerin isimleri movieclip yapıp uygun yerlere yerleştirdim ardından ilk framede hepsini visible=false yaptım. ardından xmlden illerin ismini okutup visible=true yaptım şu an xmlden okuttuğum iller gözüküyor tabi ben buraya kadar yaptım bundan sonrası için takıldım kaldım.
- 1) dediğim yapıyı oluşturmak için xml dosyamda ne tür değişiklikler yapmam lazım ?
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<deneme>
<item>
<il>istanbul</il>
<adi>x firması</adi>
<tel>0212 249 07 22</tel>
</item>
<item>
<il>izmir</il>
<adi>y firması</adi>
<tel>0355 249 99 88</tel>
</item>
</deneme>
.
- 2) flash ortamında neler yapmam lazım?
Arkadaşlar en azından mantık olarak ne yapmam konusunda fikir verirseniz sevinirim.
Şimdiden herkese teşekkürler.
Cevaplar
( Faydalı Cevapları Göster )
Selamlar,
<item>
<il>izmir</il>
<adi>a firması</adi>
<tel>0355 249 99 88</tel>
</item>
şeklinde tasarladığınız XML düğümünü (node) incelediğimde çok katmanlı bir XML yapısı yerine her bir firma için alt alta yazılan düğümlerden oluşan bir yapı tercih ettiğinizi görüyorum.
Fikrimce bu son derece pratik bir tercih ve hiç bir sorun da yaratmaz. Yani başlangıcınız bence yerinde olmuş.
Gelelim flash içerisinde gerçekleştirilecek işlemlere.
Her bir movieclip üzerinde ilgili şirketlerin tüm bilgilerini tutmak yerine, her bir movieclipte sadece "sehir_id" adında bir değişken tutmanız yeterli olacaktır.
XML swf dosyasına yüklenirken iki boyutlu bir array oluşturur, xml’de yer alan tüm bilgileri bu array yapısında aşağıdaki gibi tutarsınız.
Array=[["sehir_id", "firma_isim", "firma_tel"], ["sehir_id", "firma_isim", "firma_tel"]];
Şehire ait bir movieclip’e basıldığında tetikleyeceğiniz "sehrinFirmalari();" fonksiyonuna parametre olarak bu sehirid" bilgisini yollarsınız. Bu fonksiyon arrayinizi tarar ve "sehirid"si gönderdiğiniz parametre ile eşleşenleri ekrana dizer. Bunu yaparken de ilgili alt arrayin üst arraydeki kaçıncı sırada bulunduğunu da liste yapınızda tutarsınız.
Yukarıdakine benzer bir işlemi "firmaBilgileri();" listenin satırlarına basıldığında da çalıştırarak bu kez alt arraydeki bilgilerin tamamını ekrana getirir ve firmaya ait tüm bilgileri ekrana dökmüş olursunuz.
Size bu noktada yapacağım tavsiye xml dosyanızda çok küçük bir değişiklik yaparak şehirleri isimleri ile değil de plaka numaraları ile tutmanız olur. Şehir isimlerini ayrı bir XML dosyasında tutabilir yada swf dosyanıza doğrudan yazabilirsiniz.
Flash içerisindeki adımları sorduğunuz için bu şekilde yazdım. Eğer fonksiyonların yazılmış hallerini de isterseniz AS 1.0, 2.0 yada 3.0 olarak belirttiğinizde size uygun şekilde yazar gönderirim.
Saygılarımla,
İlker Eriş
hocam a.s 2 ile yapacağım
Selamlar,
Konuyla ilgileniyorum. Bana kısa bir süre verirsen sana dosyayı göndereceğim.
Saygılarımla,
İlker Eriş
merhaba
aslında okadarda karmaşık birşey değil bu sana sadece şunu önerim her ile bir numara ver bir xm oluştur katmanı şu şekilde olsun
<sehirler>
<sehir>
<aa>Adana</aa>
<aa>SABANCI</aa>
<aa>0322-3456789</aa>
</sehir>
<sehir>
<aa>Adana</aa>
<aa>SABANCI</aa>
<aa>0322-3456789</aa>
</sehir>
</sehirler> /// bu şekilde olsun
ve flashta verileri çekerken şu şekli kullan…
var adana:String = cenksaXml.firstChild.childNodes[0].childNodes[0].firstChild.nodeValue.toString();
burdaki kırmızı 0 olan yer senn cenksaXml isimli xml dosyanda ilk olandır.
ve veriye aktarman içinde
adana_txt.text=adana
bu şeklde ala bilirsin yada for döngüsünü kullanarak otomatik olarak alabilirsin…
iyi çalışmalar..
merhabalar, benzer bir mantiga sahip, ancak bu ornekten bagimsiz bir projem var. Sizden rica etsem ornek fla dosyasini paylasabilir misiniz?
tesekkurler,
Etkinlikler
Yarışma
Fikir10000 Dijital Pazarlama Fikir Yarışması
Fikir10000 Dijital Pazarlama Fikir Yarışması
ADTECH tarafından düzenlenen Fikir10000 yarışmasına; dijital pazarlama ile ilgili size ait olan fikrinizle katılabilir ve 10.000 YTL’lik birinci...
Kategori:
Yarışma
Kimler Burada? 
Son 1 dakika içinde MMIstanbul' da 627 (0 kayıtlı, 627 ziyaretçi) kullanıcı varmış. Login durumda olanlar aşağıda:
MMIstanbul Blog'undan
Neler Yapılabilir?
Yeni bir portal, 30 civarında online / offline etkinlik, seminer vb rağmen MMIstanbul sanıyoruz ki halen hakettiği ilgiyi göremedi. " ...
500 Hatası Hakkında!
Reklam, MMIstanbul ve Yeni Projeler (Durumumuz Bu Tarzında)
Ne Nedir Kampanyası Başlıyor!
Çok Merak Edenler için; MMIstanbul Geliştirme Ekibi ve Çalışma Ortamımız









Bu tip bir problemin cozumunde izlenecek esas, interaktif ogenin (sehir movieclip) referans aldigi bilginin indexine de sahip olmasidir.
Yani MovieClip’i yaratirken icine "Istanbul" yaziyoruz. Ayni zamanda XML’de istanbul bilgisini iceren "node"un index degerinide girmeliyiz bu movieclip’e.
Sonra mouse click yapildiginda cagrilan fonksiyon, event objesi uzerinden bu index bilgisine ulasir ve XML’den index no sunu kullanarak diger bilgilere ulasir.
JS, AS2, AS3 farketmiyor sistem ayni. Event Class ve objelerinin dokumanlarini inceleyelim.