Localization: Storyboard Localization

Localization, geliştirdiğimiz projeler için çoklu dil desteği eklemeyi sağlayan yapıdır.

Berk Turan
TurkishKit
4 min readApr 22, 2019

--

Merhaba sevgili TurkishKit okurları, bu yazımızda Localization (Yerelleştirme) terimini inceleyeceğiz. Ardından kullanım alanlarını değerlendirip, yazacağımız örnek uygulamamız üzerinden Localization desteğini, projelerimize nasıl ekleyebileceğimiz hakkında fikir sahibi olacağız.

Ayrıca, Swift dili için olmazsa olmaz Protocols konusu üzerine yayınladığımız serinin yeni yazısı olan Protocols #2 makalemizi okumanızı da tavsiye ederim.

Localization Nedir ?

Localization (Yerelleştirme), geliştirdiğimiz projeler için çoklu dil desteği yaratmayı sağlayan, uygulama geliştirme basamakları arasında önemli bir yere sahip olan temel yapılardan biridir.

Nerede Kullanılır ?

Localization, uygulamalarımızın içerisinde kullanıcıların bölgelerine ve kullandıkları dile bağlı olarak değişebilecek tüm elementler üzerinde kullanılabilecek bir yapıdır. Örneğin

  • Uygulamada gösterdiğimiz tarihlerin formatı
  • Bölgelere göre para birimleri
  • Kullanıcıların bölgelerinin kullandığı dile göre açılan klavyeler
  • Uygulama içerisinde ki metinlerin dili

Yukarıda ki örnekler dışında da aklınıza gelebilecek, bölgesel tüm ihtiyaçlarınızı Localization ile çözebilirsiniz.

Localization hakkında bir fikir sahibi olmuşuzdur umarım, şimdi örnek uygulamamızı geliştirelim ve Swift ile geliştirdiğimiz bir uygulamanın Storyboard dosyası üzerinde ki elemanların değerlerini, nasıl bölgelere göre kontrol edebiliriz öğrenelim

Kodlama Zamanı

Örnek uygulamamızda, cihazımızın bölgesinde ki tanımlı dile göre uygulama içerisinde ki UILabel elementlerimizi güncelleyebileceğimiz bir arayüz oluşturacağız.

1- Projemizi Oluşturalım Ve Interface Builder Yardımı İle Arayüzü Tasarlayalım

Örnek projemizde, sadece üzerinde localization yapısını çalıştırabilmek adına, bir adet UILabel elementi oluşturuyoruz. UILabel elementimizin içerisinde ki “Merhaba TurkishKit Okurları” mesajının dilini, cihazın bölgesine göre değiştireceğiz.

UILabel Elementi

2- Localization Yapısını Oluşturalım

Uygulamalarımıza localization yapısını ekleyebilmek için, öncelikle proje ayarlarımız içerisinden Info sekmesini seçiyoruz.

Ardından yeni bir dil desteği ekleyebilmek için, Localizations sekmesi altında ki + butonuna tıklıyoruz. Karşımıza çıkan ekranda localization yapısı kurabilmemiz için bize iki seçenek sunuyor. Bunlar her dil desteği için yeni bir storyboard oluşturmak ve uygulamamızın kaynak kodu içerisinden localizations yapısını kullanabilmemiz için String dosyaları için bir localizations dosyası oluşturmak.

Ben örnek projemiz için desteklediğim dillere İngilizce ve İtalyancayı ekledim. Şimdi bölgemize göre dili nasıl değiştirebileceğimizi görelim. Main.storyboard dosyamız içerisinde yeni bir dosya oluştuğunu görebiliriz. İtalyanca dil desteği için oluşan dosya, içerisinde ekrandaki elemanlarımızın içerilerinde barındırdıkları değerlerin İtalyanca karşılıklarını tutuyor.

İtalyanca Dil Desteği Dosyamız

UILabel içerisine koyduğumuz mesajımızın İtalyanca çevirisini dosyamıza eklediğimizde, geriye sadece uygulamamızı çalıştırmak kalıyor!

Tüm adımları doğru takip ettiysek, beklenen çıktı aşağıdaki gibi olacak.

Telefonun Bölgesi İngilizce

Simülatörün ayarları içerisinden telefonun bölge ve dilini İtalya için uygun hale getirmeliyiz. Bunun için target bölmemize tıklayıp, Edit Scheme sekmesini seçmeliyiz.

Edit Scheme

Ardından açılan ayarlar sayfasından, bölge ve dili İtalyanca için uygun hale getirip, Duplicate Scheme sekmesine tıklıyoruz.

Uygulamayı, oluşturduğumuz İtalya bölgeli simülatör üzerinden tekrar açtığımızda, karşımızda gördüğümüz çıktı aşağıdaki gibi olacak.

Ciao lettori TurkishKit!

Bu yazımızda, Localization yapısına bir giriş yapıp, uygulamalarımızın ekranları içerisinde ki elementlere dil desteği nasıl ekleyebileceğimizi inceledik. Örnek uygulamamız ile pratiğini ve implementasyonunu gördük.

Uygulamamızın kaynak kodlarına GitHub hesabımız üzerinden ulaşabilirsiniz.

Hedeflerinize bir adım daha yaklaştığınız günler dilerim. Kendinize iyi bakı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.