Hoşgeldin. Soru sormak veya cevaplamak için hemen üye ol.
0 oy
475 kez görüntülendi
ios development kategorisinde tarafından
Uygulamam için xib şeklinde bir UIView oluşturdum. İçerisinde birkaç label ve buton var. Bunların da iboutlet olarak gerekli actionlarını  ve değişkenlerini, tanımladığım xib'in  class'ına ekledim.

Şimdi ben bu UIView'i herhangi bir viewController içerisinden nasıl çağıracağım. Çağırdıktan sonra o uiview içindeki bir label'in text değerini nasıl değiştireceğim ? Bu konular hakkında yardıma ihtiyacım var.

1 cevap

+1 oy
tarafından
tarafından seçilmiş
 
En İyi Cevap

bu tarzda ufak detaylarda xib kullanmak bana göre hammalık, programsal olarak yani bir xib dosyası kullanmadan ilgili class'ları kullanmak daha kolay gelmiştir bana hep.

ama sen zaten oluşturmuşsun xib dosyanı ve class'ını o halde oluşturduğun xib dosyasının class'ını viewController'ında ilgili yerde initiate edeceksin.
zaten tanımladığın outletler erişilebilir olacaktır.

örnek;

var myClass:MyClass = MyClass()
self.view.addSubView(myClass)
myClass.myLabelOutlet.text = "teksti değiştir"

tarafından
Anladım. Teşekkür ederim. Basit işlerde sizin dediğiniz yöntemi kullanacağım. Peki tasarım yönü çok kapsamlı olan özel bir UIView oluşturmuşsak, bunu xib kullanmadan storyboard ile mi yapmak daha mantıklı ? Xib'in bir dezavantajı var mı ?
Kapsamlı bir yapısı olan uiview'lerin programsal olarak, xib olmadan kontrolü benim şu anki bilgi seviyem için çok zor görünüyor.

Sizce hangi yolu tercih etmeliyim ? Bu tarz custom viewler için  xib mi storyboard mu ?
tarafından
+1
dediğim gibi bana hep daha zor gelmiştir xib veya storyboard kullanmak.
ben storyboard bile kullanmıyorum ama tercih meselesi tabi.
user interface'i programsal olarak tasarlamak kod üzerindeki hakimiyet ve kavrayışınızı arttıracağı gibi çok boyutlu düşünme ve kavramları visualize etme yeteneğinizi geliştirir.
kısacası ısrarla programmatically diyorum. :D

şaka bir yana storyboard'la bir view tasarlamazsınız bir viewController ve içerisindeki view'i tasarlarsınız, eğer sadece gerektiğinde çağrılacak bağımsız bir view oluşturmak istiyorsanız standalone xib dosyaları ve class'larını oluşturmaya mecbursunuz.
tarafından
Daha çok ekmek yememiz lazım sizin  seviyeye geçiş için. Yardımınız için çok teşekkür ederim.  Her zamanki gibi aydınlattınız.
...