"Enter"a basıp içeriğe geçin

Kategori: Iphone

Tgrt-FM iPhone/iPad uygulamasının yeni sürümü nihayet yolda..

Neredeyse bir ay kadar önce Tgrt-FM iPhone uygulamasında kullanılan sunucu adresinin değiştirildiğini, uygulamanın güncellenmesi gerektiğini haber verdiler ama hem Tgrt tarafından beklediğim bazı adreslerin (yayın akışı, frekans listesi ve streaming adresinin onların vereceği sabit adreslerde tutulmasını talep ettim, böylece hem kendi sunucumda parse etmeme gerek kalmayacak hem de olası streaming adres değişikliğinde uygulamayı güncellemek gerekmeyecek) gelmesi hem de fırsat bulup yeni bir tasarım yapmam biraz uzun sürdüğü için ancak bugün göndermek nasip oldu. Sürekli istememe rağmen PHP’den başımı kaldıramadığım için unuttuğum Objective-C ve Xcode’un bana çıkartığı problemler de cabası tabi. Ama Tgrt-FM’in bu yeni sürümü sayesinde bir şeyi daha tecrübe…

Hello Siri!

Dün akşam bir arkadaşımın Almanya’dan getirttiği iPhone 4S’i biraz kullandım. İlk işim Siri’yi incelemek oldu tabi. Benim İngilizce telaffuzum berbat ötesi olduğundan Siri pek bir şey anlamadı. Gerçi Türkçe anlasaydı da telaffuzumu beğenmeyebilirdi (Bizim uşaklardan Cemal’i bağla dedum da). Geçen sene iPhone 4’ü de ilk kez bu arkadaşda görüp “patrondan önce kullandım” havasını atmak için hemen twitter, instagram, facebook, friendfeed ne kadar sosyal medya varsa paylaşmıştım :)) Ama patronum şuan Amerika’da olduğundan gelirken kendine bir tane alıp “hava öyle değil böyle atılır Hasan’cım” derse şaşırmayacağım :)))) Bu kullandığım iPhone 4S, Almanya’dan geldi. Hem de piyasaya çıktığı günün ertesinde. Yeni iPhone’nun…

Harika bir iPad Oyunu: Air Attack HD

Bugün İstanbul Forum’daki Bimeks standlarını dolaşırken iPad’ler gözüme çarptı. Yenileri değil tabi 🙂 Onların Türkiye’ye gelmesine daha çok var. Eskileri bile anca geldi. Müşterilerden biri iPad’lerden birini kapmış söylene söylene oyun oynuyordu. Ne oynuyor, neye söyleniyor diye merak ettim, yaklaştım. “Adamlar ne güzel yapmış, teknolojiye bak bee” diyordu. Meğer hayıflanması cihazı beğenmesindenmiş 🙂 “Bu daha eskisi, yenisi bundan da güzel” diyerek lafa karıştım. Oynadığı oyuna şöyle bir baktım. Eskiden atari salonlarından hatırladığım “Raptor” tarzı bir oyundu. Tabi ki grafikleri Raptor’dan bir milyon kat daha güzeldi. iPad’de uygulamaların ne işe yaradığından ziyade ne kadar güzel göründükleri daha çok ilgimi çekiyor. Hemen…

iPhone Kursu’ndan Mezun Olduk

Aralık ayında başladığımız iPhone kursumuz bugün sona erdi. Sevgili hocamız Kevser Temiz’e emeklerinden dolayı şahsen çok teşekkür ederim. iPhone gibi popüler bir alanda ilk eğitimi verip -üstelik oldukça ekonomik fiyatla- lider eğitim firmalarına fark atan Gelişim Platformu’na ayrıca teşekkür ederim. Kursa katılmadan önce Objective  C konusunda internetten ve çeşitli kitaplardan derme çatma ingilizcemle edindiğim bilgilerin bu kursda aldığım eğitim yanında solda sıfır kaldığını farkettim. 60 saatte Objective C’ye tabi ki %100 hakim olmak imkansız, ama en temel konuların hepsini öğrendik. Artık kendimizi geliştirip eksiklerimizi tamamlamak bize kalmış. Kursun ilk zamanlarında öğrendiğim herşeyi akşamında bloga yazmak, hem bilgilerimi tazeyken pekiştirmek hem…

iPhone Kursu: Plist’lerle tablo oluşturmak-Bölüm1

İki haftadır iPhone kursumuzla ilgili yazı yazamadık. Bunun en büyük nedeni kurs dışındaki işlerimizin aşırı yoğun olmasıydı. Kursdaki konular da giderek daha karmaşık hale geldiği için malesef yazacak vakit bulamadım. Bir ara screen-recording ile video şeklinde hazırlayayım dedim ama sessiz bir ortamda boşluğa konuşmayı beceremedim. Bir kaç popüler video blog inceledim, ama bana göre değilmiş. Hasılı, klasik usüle devam.

Bugün sanırım 10. dersi gördük. Sayısı mühim değil, mevzusu mühim. Artık dışardan data alabileceğimiz konulara geldik. Hocamız önce plist denen dosyalardan nasıl veri okuyabileceğimizi anlattılar. Kısa fakat çok yararlı bir konu olduğundan blogda paylaşmak istedim.

Plist dosyaları, anahtar=>değer (key=>val) formatında veri içeren basit xml dosyalarıdır. Aslında bütün iPhone/iPad uygulamalarında zaten bir tane plist dosyası (uygulama_adi.plist) bulunmaktadır ve uygulamanın icon dosyaları, uygulamanın görünecek adı, ana nib dosyasının ne olduğu gibi bazı ayarlar bu dosyada tutulur.

Biz de istediğimiz kadar plist dosyası oluşturup projemizin resource kısmına koyabilir ve uygulamamızda bu dosyalardan faydalanabiliriz.

Basit bir örnekle konunun detaylarına girelim: Amacımız yine yemek tarifleri uygulaması  yazmak olsun. Ama bu kez datamızı kodun içerisine değil bu plist dosyalara yazalım. İnşallah ileriki konularda da veritabanına yazarız. Uygulamamız “navigation based” bir uygulama olsun ve ilk açıldığında listede yemek kategorileri olsun, tıklandığında ikinci listede de o kategorilerdeki yemekler görünsün. Sonraki aşamaların mantığını zaten daha önceki yazılarda uzun anlatmıştık. O kısımlara hiç girmeyelim. Sadece birbiri ardınca iki listeyi plistlerle doldurmayı görelim.

iPhone Kursu 4. Ders: Tab Bar Controller

Yarın kursumuzun beşinci dersi var, bense daha dördüncü dersi yeni yazıyorum. Bugün bütün günümü üçüncü dersin ikinci kısmı olan Navigation Controller yazısını yazmaya harcadığım için -ve tahminimden çok daha uzun sürdüğü için- Tab Bar Controller’a anca sıra geldi. Uzun uzun yazmak gerçekten yorucu oluyor, ileride Video Blog şekline geçmeyi düşünebilirim.

Bu kez kısa kısa gitmeye çalışacağım. Bir önceki uzuun yazıyı iyice sindirdiyseniz temelde ondan farklı hiç bir şey yapmadığımızı göreceksiniz.

Bu dersde sıfırdan Tab Bar Controller kullanmayı göstermişti hocamız. Fakat notlarımı şirkette unuttuğum için dersteki örnek yerine yine bir önceki yazıdaki gibi Yemek Tarifleri uygulamasının başka bir versiyonu ile yazıya devam edelim. Tab Bar kullanmak asıl amacımız olacağı için daha önceki yazıda “Etli Yemekler, Zeytinyağlılar ve Çorbalar” şeklinde olan kategorileri bu kez Tab Bar’ımızın sekmeleri olarak düşünelim. Sekmelere basıldıkça birer liste çıksın ve içinde yemekler sıralansın (Table View Controller). En son sekme olarak da “Hakkımızda” sekmesini ekleyelim. Buna basıldığında programımız hakkında küçük bir bilginin yer aldığı ekran görünsün (Custom View Controller).

iPhone 3.Ders 2.Kısım: Navigation Controller ile Yemek Tarifleri Uygulaması

Kursda üçüncü dersin son kısmında hızlıca Navigation Controller’ı görmüştük fakat yazmaya fırsat bulamamıştık. İyi de oldu, çünkü tek bir yazıda uzun uzadıya bütün dersi anlatmaktansa konulara göre bölerek anlatmak daha iyi olur kanaatindeyim.

iPhone uygulamalarında en çok kullanılan view controller’lardan biri de Navigation Controller’dır. Navigation Controller’da hiyerarşik bir düzen vardır. Genelde Table View’larla beraber kullanılır. Kullanıcı ilk Table View’dan bir satıra tıkladığında o satırla ilgili yeni bir view çağrılır. Eğer bu da bir Table View ise burdaki bir satıra tıklandığında bir sonraki ilgili view çağrılır. Her bir alt kademedeyken bir üst kademeye geri dönmek için Uygulamanın üst kısmındaki bar’da geri dönüş butonları otomatik olarak çıkar (Tabi o ekran için bir title -başlık- yazmışsak).

Şimdi basit bir uygulama ile Navigation Controller’in detaylarına inelim. Yemekler adında küçük bir uygulama hazırlayalım, ilk ekranda “Etli Yemekler, Zeytinyağlılar ve Çorbalar” şeklinde yemek kategorileri listelensin. Etli Yemekler’e tıklandığında “Orman Kebabı, Hünkar Beğendi, İskender” sıralansın. Zeytinyağlılar’a tıklandığında “Taze Fasülye, İmam Bayıldı, Barbunya” sıralansın. Çorbalar’a tıklandığında “Ezo Gelin, Tarhana, Yayla, Şehriye” sıralansın. Aslında kursda bu örneği işlemedik ama nasılsa blog’da zamanımız daha bol olduğu için sindire sindire anlayalım diye bu tarz bir örnek kullanmak istedim.

Birden fazla Table View ile çalışmak

Eğer iPhone uygulamamızda birden fazla Table View kullanmak istiyorsanız ve kodlar da birbirine karışmasın diyorsanız aşağıdaki adımları takip ediniz:

  • View Based Application taslağı ile yeni bir proje oluşturun. (Bu yazı için hazırladığımız örnek projemize “CokluTablo” adını verdik. Dosya isimlendirmeleri bu şekilde yapılacaktır.)
  • Resurce klasöründeki CokluTabloViewController.xib dosyasını Interface Builder ile açıp içine Library’den 2 tane TableView  nesnesi yerleştirin. (Resim 1)
  • Xcode’a geri dönüp Classess klasörüne sağ tıklayın ve şu adımları seçin: Add -> New File -> UIViewController Subclass (seçeneklerden sadece UITableViewController subclass seçili olsun). (Resim 2)
  • Dosya adı olarak Tablo1.m yazın (Tablo1.h da otomatikmen oluşacaktır).
  • Aynı işlemi tekrar yapın ve dosya adı olarak Tablo2.m yazın.

iPhone Kursu 3. Ders: TableViewController

Malumunuz iki hafta önce Gelişim Platformu bünyesinde 60 saatlik iPhone Uygulama Geliştirme eğitime başladık. Kursda gördüğümüz konuları dilim döndüğünce burada paylaşmaya çalışıyorum. Konular ilerleyip karmaşıklaştıkça detayları paylaşmak daha yorucu olacağından şimdiden affınızı rica ediyorum.

Bu dersimizde ViewController’ları gördük. Bir kaç tanesine değindik, TableViewController ve Navigation Controller üzerinde denemeler yaptık. Diğer derslerde controller’lara devam edeceğiz.

iPhone için yazılan uygulamalar MVC (Model, View, Controller) prensibine dayanır. Kabaca ifade edersek; Model yapıları veritabanı ile olan alışverişi, View yapıları uygulamanın görsel kısımlarını oluşturur. Controller’lar ise bu ikisini koordine eden yapılardır.

iPhone Kursu 2. Ders: Hello World!

Bu akşam iPhone Eğitimimizin 2. dersini gördük. Daha önce kendi başımıza uygulamalar yazmış olsak da sınıf olarak herşeye sıfırdan başladığımız için geçtiğimiz dersde Xcode’a tepeden bir bakış attık. Bugün de ilk “Hello World” uygulamamızı yaptık.

Uygulamaya geçmeden önce Mac tedarik edemeyen kursiyerlerin Windows makinelerinde çalışabilmeleri için önceden hazırlanmış ve içinde Xcode bulunan sanal makine (VMWare) imaj dosyası elden ele dolaştı (bu dosyanın linkini bulabilirsem bu sayfalarda yayınlayacağım). Ofisteki bir arkadaşımdan ödünç MacBook Air alamasaydım ben de bu kervana katılacaktım. Sanal makinelerle ne kadar uğraştığım blogun eski sayfalarında mevcut. Bu noktada hemen haklı eleştirimizi yapalım. Gelişim Platformu; yıllardır verdiği eğitimlerle ön planda olan bir dernek. Bildiğim kadarıyla Türkiye’de iPhone uygulama eğitimi ilk kez GP tarafından veriliyor. Çok makbule geçtiğini -şahsen- ifade edeyim. Fakat bu kursa arkadaşlarımı çağırırken “bir şey getirmenize gerek yok, nasılsa iPhone eğitimini pc’lerde yapacak halimiz yok, orda Mac laboratuvarları vardır” demiştim. Fakat değil Mac, normal bir pc laboratuvarı bile göremedik. Neyse ki başvuranların sayısı çok fazla oldu da iki gruba bölünerek rahat bir ortamda ders almaya başladık.  İnşallah bu iPhone eğitimi daha pek çok kere verilecektir. GP’de güzel bir laboratuvar ile bu başarı karşısında kendini ve kursiyerlerini ödüllendirir.