02-06-2012, 14:34
Merhaba arkadaşlar;
Daha önce de film arama örneği yapmıştım. Bu seferki resminden de göreceğiniz üzere çok daha gelişmiş bir örnektir.
Örnekte film ve oyuncu olmak üzere 2 tane seçme kutusu vardır. Bu seçme kutusundaki seçime göre arama kutusuna yazacağınız kelimenin yer aldığı filmler listelenecektir. Listeden seçeceğiniz filmin detayları sağ tarafa gelecektir. Film afişi, oyuncuları ve seçilen filmdeki karakter isimleri, resimleri ve yönetmen resmi vs vs. Film listesinin altında sayfa sayısı ve toplam film sayısı etiketini göreceksiniz. Her sayfada 20 film vardır. Siz yanındaki açılan kutudan diğer sayfaları seçebilirsiniz.
Film afişi üstündeki linke tıklarsanız o resmi orjinal boyutlarında açabilirsiniz. Afişin altındaki IMDB linkine tıklayarak ise o fimi IMDB sitesinde de inceleyebilirsiniz.
Oyuncu araması yaparsanız, örneğin açılışta olduğu gibi Star yazarsak ve oyuncu seçeneğini seçersek bir açılan kutu çıkacaktır. Bu açılan kutuda aranılan kritere göre isimler yer alacaktır. Açılan kutudan isim seçtiğinizde oyuncunun resmi yine sağ taraftaki afiş alanına gelecektir ve liste kutusuna ise o oyuncunun rol aldığı filmler listelenecektir. Yine listeden istenilen filmi seçerek detaylarını görebilirsiniz.
Örnek ile ilgili notlar;
Öncelikle Access ile bu konuda yapılmış daha detaylı bir örnek olduğunu hiç sanmıyorum. Bu örneğin benim için bir önemi ise kendimin de her zaman kullanacağım bir örnek olması.
Uygulamada kirli kodlar vardır nedeni ise, başta bu kadar detaylı yapmayacaktırm, oyuncu resimleri, oyuncu seçme ve oyuncunun yer aldığı filmler gibi detaylara girmeyecektim. Statik hale getirmem gereken method ya da verileri daha külfetli bir şekilde kullandığımı göreceksiniz.
Uygulamada http://help.themoviedb.org/kb/api/about-3 bu apiyi kullandım. Api derken herhangi bir library değil. Sitenin sunduğu servisi. Servis JSON olarak sonuç döndürnektedir. Örnekte de gerekli parseler yapılarak veriler alınmıştır.
Eğer siz uygulama üzerinde değişkliklere gidecekseniz bu apiye hakim olmanız gerekmektedir. Örneğin oyuncular hakkındaki kişisel bilgileri de almak isteyebilirsiniz.
Faydalı olması dileklerimle...
Berkant Öztürk
Javascript
- this.setState({sign:"Here comes the sun...."})




