UIKit: UISwitch

UIKit kütüphanesinin basit ve kullanışlı bir kontrol aracı olan UISwitch, hangi durumlarda kullanılır ve kod ile nasıl kişiselleştirilir?

Berk Turan
TurkishKit
4 min readFeb 11, 2019

--

Merhaba TurkishKit okuyucuları, bu yazımızda UISwitch elementini inceleyeceğiz. Benzer bir denetleme mekanizması olan UISlider elementini de önceki yazımızda incelemiştik, okumanızı tavsiye ederim.

Vakit kaybetmeden başlayalım!

UISwitch Nedir ?

UISwitch elementi, durumları denetleme imkanı sağlayan, UIControl yapısının bir alt sınıfıdır. Bir özellik veya fonksiyon üzerinde Açık/Kapalı durumunu kontrol etmek için sıklıkla kullanılır.

Kullanım Alanları

UISwitch, temel işlevinin Açık/Kapalı durumunu denetlemek olduğundan uygulamaların ayar değişikliği işlemleri için çok uygun bir yapıdır.

iOS Klavye Ayarları

UISwitch Yapısı

UISwitch Elementi

UISwitch elementi temel amacı olan denetleme işlevini yapabilmek için içerisinde isOn isimli, boolean tipinde, UISwitch elementinin Açık/Kapalı durumunu belirten bir değişken ve bu değişken üzerinde değişiklik yapılmasına imkan vermek için setOn adında bir fonksiyon bulundurur.

Değişken üzerinde yapacağımız değişiklikler, bizlere UISwitch elementimizin durumuna bağlı işlemleri yapmamızı sağlar.

Aynı zamanda UISwitch, kişiselleştirilmesini sağlayan özellikler de bulundurur.

Bu özelliklerin hepsini yazacağımız örnek uygulamamız üzerinde kullanacağız.

Kodlamaya geçelim!

UISwitch İmplementasyonu

UISwitch elementini kullanacağımız örnek uygulamamızda bir UISwitch elementine ve UISwitch elementimizin durumunu ekranda göstermemizi sağlayacak bir UILabel elementine ihtiyacımız var.

1 ) UISwitch Objesi Tanımlama

UISwitch elementimizi Interface Builder yardımı ile Storyboard ekranımızda oluşturduktan sonra ViewController dosyamız içerisine tanımlıyoruz. Bu işlemi objemizin durumunu ekran üzerinde göstermek için kullanacağımız UILabel objemiz için de tekrarlıyoruz.

Interface Builder ile UISwitch Tanımlama

Ardından objelerimizin ekranda görünmesini istediğimiz konumunu belirliyoruz.

İlk adımımızı tamamlamak için son olarak yapmamız gereken UISwitch objemizin uygulamamız ilk çalıştığındaki durumunu kodlamak olacak :

Bu işlemleri yaptığımıza göre artık UISwitch objemizi istediğimiz görünüme kavuşturmaya hazırız!

2 ) UISwitch Objesini Kişiselleştirme

UISwitch objemizin görüntüsünü yapmak istediğimiz tasarıma göre UISwitch sınıf özelliklerini kullanarak belirliyoruz.

UISwitch Özelliklerini Kişiselleştirme

Bu adımdan sonra UISwitch objemiz ekranda tanımladığımız renklerde belirecektir.

3 ) UISwitch Objesinin Durumunu Kontrol Etmek

Sırada UISwitch objemizi açtığımız ve kapadığımız durumlarda, UILabel objemizi değiştirmek var. UISwitch elementimizin durumunu her değiştirdiğimizde, UILabel elementinin yazısını değiştirebilmek için bir fonksiyon yazdık.

UISwitch Elementinin Durumu Değiştiğinde Etkinleşecek Fonksiyon

Bu fonksiyon sayesinde UISwitch elementimiz üzerinde yapacağımız her tıklamada tanımladığımız UILabel elementimizin metnini ve UISwitch değişkenimizin içerisindeki isOn özelliğini güncelleyebiliyoruz.

4 ) UISwitch Elementi ve Fonksiyonu Bağlamak

Yazdığımız fonksiyonu UISwitch değişkenimize bağlamak için UIControl sınıfının addTarget fonksiyonunu kullanıyoruz. Böylece kullanıcının UISwitch ile etkileşime girdiği sırada yukarıda yazdığımız fonksiyonun çalışmasını sağlıyoruz.

UIControl Sınıfından Gelen addTarget Fonksiyonunun Kullanımı

Bu adımın da sonuna geldiğimize göre uygulamamızı çalıştırabiliriz.

5 ) Uygulamayı Çalıştırmak

Eğer gösterilen adımları takip ederek uygulamamızı kodladıysak, sonuç aşağıdaki gibi olacaktır.

UISwitch Örnek Proje

Yazdığımız uygulamanın kaynak kodlarına GitHub üzerinden ulaşabilirsiniz.

Bu yazımızda UISwitch mekanizmasının yapısını, içerdiği özellik ve fonksiyonları gördük, örnek bir uygulama ile pekiştirdik. Hepinizin hedeflerinize bir adım daha yaklaşmasını dilerim. Bir sonraki yazımızda görüşmek üzere, hoşçakalın. ✋

Bizi daha yakından takip etmek istiyorsanız, sosyal medya hesaplarımıza aşağıdan ulaşabilirsiniz.

Twitter | Instagram | Facebook

--

--

Berk Turan
TurkishKit

I am an Istanbul-based electronic music producer who started releasing songs in November 2022. I share my experience from my musical journey.