Hoşgeldin. Soru sormak veya cevaplamak için hemen üye ol.

Xcode 8 Constraint Sorunu

0 oy
69 kez görüntülendi
18, Şubat, 2017 ios development kategorisinde yildirimosman tarafından soruldu
18, Şubat, 2017 yildirimosman tarafından düzenlendi

Merhaba,

Xcode 7 ile geliştirdiğim projeyi Xcode 8 de açıp upgrade işlemini gerçekleştirdim.Ayrıca uygulamam tek tip cihazda çalışacağı için Auto Layout kullanmadım ve kullandığım bir kütüphanede sorunla karşılaştım.Bu kütüphane constraintler üzerinden işlem yapıyordu.Şimdi asıl sorum şu olacak:
Xcode 7 ile eski projeyi örneğin bir butonda default olarak constraint ekleniyordu ama Xcode 8 de default olarak constraint eklenmemiş olduğunu gördüm.Bunu da şu şekilde elde ettim.

Xcode 7 ile console'a po button.constraints yazdığım zaman aşağıdaki sonucu almaktayım

-[0] : NSContentSizeLayoutConstraint:0x7f93916b1210 H:[UIButton:0x7f9391615b20'Button'(46)] Hug:250 CompressionResistance:750
- [1] : NSContentSizeLayoutConstraint:0x7f93916141b0 V:[UIButton:0x7f9391615b20'Button'(30)] Hug:250 CompressionResistance:750

Xcode 8 ile console'a po button.constraints yazdığım zaman ise aşağıdaki sonucu almaktayım
0 elements

Dediğim gibi her iki projemde de ilgili butona constraint eklemedim ancak Xcode 7'de default olarak 2 tane NSContentSizeLayoutConstraint görünmekte Xcode 8'de ise herhangi bir NSContentSizeLayoutConstraint görünmemektedir.
Acaba sebebini ve nasıl çözebileceğimi biliyormusunuz?

1 cevap

0 oy
20, Şubat, 2017 yasin tarafından cevaplandı

Çok muğlak bir problem. xCode7 veya 8 özelinden ziyade, kullandığın kütüphanenin versiyon uygumsuzluğu ile ilgili bir problem gibi geldi bana. Görmeden bir yorumda bulunmak zor.

20, Şubat, 2017 yildirimosman tarafından yorumlandı

Sanırım Xcode'dan dolayı Yasin Bey.Bir de Xcode 7 ile Xcode 8 arasında da şu fark var.Bundan dolayı olduğunu düşünüyorum aslında sorunumun.Örneğin ekrana bir tane button ekledim ve herhangi bir constraint eklemedim.Xcode 7 de Content Hugging alanı aşağıdaki gibi görünürken Xcode 8 de bu alan constraint ekledikten sonra görünmekte malesef.Acaba bu Content Hugging farkı gözünüze çarptı mı hiç?

enter image description here

20, Şubat, 2017 yasin tarafından yorumlandı

Content hugging ve Compression Resistance priority'nin gözükmemesi normal, çünkü xCode8'de sizeClass mevzusu tamamıyla değiştirildi.
Artık cihaz ekran size ve orientation'ına göre storyboard, "pixel perfect" olarak düzenlenebiliyor.
Dolayısıyla kullanmakta olduğu kütüphane Content hugging ve Compression Resistance'ı erişemiyor. Bu nedenle kütüphane ile ilgili olabileceği imasında bulundum. Alternatif bir yol üretmen gerekebilir bu durum için.

20, Şubat, 2017 yildirimosman tarafından yorumlandı

Anladım çok teşekkür ederim Yasin Bey farklı bir çözüm arayışına gireceğim o halde

...