SORU
26 EYLÜL 2013, PERŞEMBE


UİScrollView Sekmeli İçerik Boyutu Belirsizlik (Xcode 5 iOS 7 Arayüz Oluşturucu)

Sevgili geliştiriciler, Interface Builder (5 / iOS 7 Güncellemelerinden) Otomatik düzen ile sorun yaşıyorum. Çok temel ve herkes bunu düzgün bir şekilde nasıl çalıştığını bilmesi gerektiğini düşünüyorum bu yüzden çok önemli. Eğer bu böyle büyük mükafat bir hata ise, çok kritik bir sorun.

Bu gibi görünüm bir hiyerarşi var yüzden ne zaman bir sorun ile karşılaştım:

UİViewController

UİView

UİScrollView

UİLabel (veya herhangi bir diğer benzer UİKit Element)

Bu UİScrollView her taraftan katı kısıtlamalar, örneğin, 50 px (no problem) vardır. Sonra ekliyorum bir Üst Uzay kısıtlaması için UİLabel (sorun yok) (ve ben bile pin yükseklik / genişlik etiket, değişiklik yok, ama olmalı gereksiz nedeniyle Etiketin iç boyut)

Sorun UİLabel sonunda bir kısıtlama eklediğimde başlar:

E. g., Boşluk için: Superview Eşittir: 25

Şimdi iki uyarı oluşur ve neden anlamıyorum:

A)Sekmeli İçerik Belirsizlik (Kaydırma Görünümü içerik yükseklik / genişlik belirsiz kaydırılan) Boyutu

B)(Etiket Beklenen: x= -67 Gerçek: x= 207 . yanlış Manzaralı

Ve bir ekran görüntüsü ekledim indirebilirsiniz taze yeni bir projede en az bu örnek yaptım. Gördüğünüz gibi, Interface Builder Etiket UİScrollView sınırları (turuncu çizgili dikdörtgen) dışında oturmak için bekliyor. Sorunları Çözmek aracıyla Etiketin çerçeve güncelleme orada hareket ediyor.

Eğer bir UİView ile UİScrollView değiştirirseniz, davranışlarını Etiket çerçevesi, doğru ve kısıtlamayı göre) beklendiği gibi. lütfen dikkat: Ya da önemli bir şey üzerinde eksik olduğumu UİScrollView ile ilgili bir sorun gibi görünüyor.

İB önerdiği gibi Etiketin çerçeve güncellemeden Uygulamayı çalıştırdığımda tam olarak olması gerektiği yerde gayet iyi konumlandırılmış, ve UİScrollView kaydırılan. Eğer çerçeve güncelleme yaparsam Etiket önünden ve UİScrollView kaydırma değil.

Beni Obi-Wan Kenobi yardım! Neden belirsiz düzeni?? Neden yanlış görünümü???

Örnek projeyi buradan indirin ve neler olduğunu anlamaya çalışın: https://github.com/Wirsing84/AutoLayoutProblem

Illustration of the problem in Interface Builder

CEVAP
1 Aralık 2014, PAZARTESİ


Ben sadece bu şekilde dizildi:

  1. EkleyinUIScrollView a UIView (contentView diyebiliriz);

  2. contentView, Bu0 üst, alt, sol ve sağ kenar boşluklarını ayarlayın(superView scrollView) tabii ki;Set ayrıca yatay ve dikey olarak ortala;

Bitmiş.

Şimdi contentView scrollView contentSize otomatik contentView ile göre yeniden başlayacak tüm görüşlerinizi ekleyebilirsiniz.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • GavinMichaelBooth

    GavinMichael

    26 AĞUSTOS 2006
  • Caramella Girls

    Caramella Gi

    19 Mayıs 2008
  • YEAH1TV

    YEAH1TV

    19 ŞUBAT 2009