iOS Programlamada Gesture Recognizer Kullanımı
Merhabalar Arkadaşlar,
Bugünkü yazımda sizlere bir önceki derste butonlar vasıtasıyla resimleri değiştirmiştik. Bu yapıyı daha kolay hale getiren Gesture Recognizer kullanımından bahsedeceğim. Hazırsanız haydi başlayalım :)
Gesture Recognizer Nedir ?
GestureRecognizer sınıfıyla birlikte kullanıcının ekranda gerçekleştirdiği parmak hareketlerini kolayca algılamanız ve bunlara hızlıca tepki vermeniz için hazırlanmıştır. Örneğin, ekrana uzun süre basıldığında bir elemanın silinmesi ,iki parmakla bir elemanın büyütülmesi , sağ-sol hareketleriyle ekranlar arası geçiş yapma ve birçok farklı işlemleri GestureRecognizer sınıflarıyla gerçekleştirebiliriz.
Gesture Recognizer Sınıfları
- UILongPressGestureRecognizer: Ekrana uzun süre basma hareketlerini algılayan sınıftır.
- UIPanGestureRecognizer: Parmakla yapılan taşıma hareketlerini takip eden sınıftır.
- UIPinchGestureRecognizer : Ekranda iki parmakla yapılan ve genelde büyütme / küçültme amaçlı kullanılan hareketleri takip eden sınıftır.
- UIRotatitionGestureRecognizer: Ekrandaki döndürme amaçlı parmak hareketlerini algılayan sınıftır.
- UISwipeGestureRecognizer : Parmakla yapılan sayfa değiştirmeye benzer hareketleri takip eden sınıftır.
- UITapGestureRecognizer: Ekrana yapılan dokunmaları takip eden bir sınıftır.
Gesture Recognizer’ın ne işe yaradığını öğrendikten sonra şimdide örnek yapmaya başlayabiliriz.
Main.storyboard ekranında bir image ve bir adette label ekliyoruz. Senaryomuz kullanıcı resmin üzerine tıklayınca resim değişecek ve alttaki yazıda resme göre başka bir değer alacak.
Eklenen componentleri View.Controller sınıfından tanıtma işlemini gerçekleştirdik.
viewDidLoad() içinde ise image tıklanma özelliğini aktif ettik. Gesture Recognizer türlerinde UITapGestureRecognizer ekrana dokunma hareketlerini algılayan yapıyı kullandık. Buttonlarda işlemler yapmak için kullandığımız metod yapısını burada da kullanmak için bir metod oluşturduk.
changePic adında bir metod oluşturduk. isFruit Class’ın en başında tanımlanan bir bool değerde değişkendir. Eğer bu değer doğru ise image’ı çilek olarak güncelle ve isminede çilek yaz ve bu değeri false yap dedik. Fakat bu isFruit değeri false ise bu sefer image değerini erik yap ve text alanına erik yaz ve değerini false yap. Bu yapı her zaman devam edecektir. Sizlerde başka meyveler ekleyip istediğiniz koşulları koyarak eğlenceli bir app haline dönüştürebilirsiniz :)
Projenin kodlarına aşağıdaki adresten ulaşabilirsiniz :
Evet arkadaşlar Gesture Recognizer yapısından bahsedip bir örnek yaptık. Bir sonraki yazıda görüşmek üzere kendinize iyi bakın. Bol kodlu günler dilerim.
Yararlandığım Kaynaklar