Extension Nedir ? Swift ile UIView Extension Kullanımı

Mustafa MEDENİ
NSIstanbul
2 min readNov 20, 2017

--

Merhaba arkadaşlar ilk yazımda size özellikle nesnelere yeni özellikler kazandırmasından dolayı çok sevdiğim Extension türkçesi ile genişletmeleri anlatmaya çalışacağım.

Extension Nedir ? Ne işe Yarar?

Extension yani türkçe anlamı ile genişletmeler sınıflara nesnelere yeni özellikler kazandırmaya yarıyor, örnek vermek gerekirse stringler için yazmış olduğunuz bir fonksiyonu string için extension haline getirerek herhangi bir string değişkende sınıfın kendi fonksiyonu gibi çağırıp istediklerinizi yaptırabilirsiniz. Benim extensionları genel olarak kullanım amacım arayüz geliştirmeleri için oluyor sizlerle de herhangi bir UIView`e storyboard üzerinden ayarlabilen Tap Gesture eklemeyi göstereceğim bu sayede istediğiniz uivewlere tıklama ile klavyenin kapanmasını sağlayacağız.

Extension Oluşturma

Yeni bir swift dosyası oluşturalım ve extension keywordu ardından extension eklemek istediğim sınıf adını yazalım aynen şöyle ;

Şimdi UIView özelliği olarak ekleyeceğimiz için @IBInspectable ön eki ile nesne ismimizi ve alacağımız türü belirtiyoruz, geri kalan kısmını siz kodda incelerken bende hemen altında açıklamasını yapıyor olacağım 🤓

UIView özelliği get set değerlerinin ayarlamasını yapıyoruz. Get değeri olarak default değerimizi yani false dönüyoruz, set parametresine geldiğimizde de newvalue adında bir değişkenimiz var buda bize atanan yeni değeri referans ediyor. Burada atanan değerimiz true ise tapgesture nesnemizi oluşturuyoruz ve view`e ekliyoruz.

Burada sizinde dikkatinizi geçen 8. satırda yer alan selector yani tapgesture tetiklendiği anda çalışacak fonksiyonumuzu belirttik ancak kodunuz şu durumda hata verecektir çünkü UIView nesnesine ait tapGestureAction bir fonksiyon yer almıyor bu fonksiyonu da biz UIView extension`u içerisine ekliyoruz.

Bu fonksiyonda (tapGesture tetiklendiği anda) yaptığımız tek işlem duzenlemenin son bulduğunu bildirmek yani klavyeyi kapatmak.

Nasıl Aktif Ederiz ?

Biz bunca kodu yazdıkta nasıl aktif ederiz diyorsanız eğer tek yapmanız gereken herhangi bir view`in property kısmında bizim verdiğimiz isimde yer alan AddTapGesture özelliğini on yapmak kapatmak istediğinizde de tekrar off yapabiliriniz. İşte aynen şöyle

Aşağıda yazdığımız kod bloğunun bütün halde bulunmaktadır buradan da kontrol edebilirsiniz. . .

Sonuç . . .

Bu ilk yazımda elimden geldiğince sizlere swift ile Extension` ı anlatmaya çalıştım umarı yardımcı olabilmişimdir.

iyi Kodlamalar. . .

--

--

Mustafa MEDENİ
NSIstanbul

iOS Developer | Gopher and Coffee geek | ios — web📱💻 🤓