2014-10-20 16 views
10

Bir uygulama yapmak için Xcode 6'daki Arabirim Oluşturucusu'nu kullanıyorum ve farklı boyut ekranları için ekrana ortalamak için metin alanlarını ve düğmeyi almada sorun yaşıyorum.Otomatik düzen: Xcode 6: Merkezleme UI öğeleri

Konteynırda yatay ve dikey merkezlemeyi seçmenin bir sorun olduğunu düşündüm, ancak otomatik düzende denediğimde öyle görünmüyor. Aslında biraz etrafta tinkledim ve hala anlamadım.

Sadece herhangi bir boyut iPhone ekranı için benim düğme ve metin alanlarının tümünü görmek isterler ve şu anda simülatör sadece böyle bu arayüzü öğeleri bir kısmını gösteriyor: Ayrıca

View in iPhone 6 simulator

Ben Bunu henüz kodda yapma düzeyinde olmadığım için bunu storyboard'da yapmak ve kodda yapmak istemiyorum.

cevap

11

Adım 1: Boyut sınıfınızın en az portre görünümünde tüm iPhone ekranlarını kapsadığından emin olun. Yani, beden sınıfını "wCompact hRegular" olarak değiştirin.

Adım 2: Boyut sınıfını doğru bir şekilde ayarladıktan sonra, UITextFields ve UIButton öğelerini storyboard'unuza ekleyin. , Iki things-

bir hatırlamak gerekiyor önce, kısıtlamaları eklemeye başlayın: Bana göre ki-

enter image description here

Adım 3 şey görünüyor. Öğeniz (UITextField, UIButton, UIView veya herhangi bir bileşen), başlangıç ​​konumunu açık bir şekilde bilmeli ve

b. Öğenizin boyut anlamını, boyunu ve genişliğini bilmesi gerekiyor.

Bu durumda, öğelerinizi merkezlemek istediğinizde, sadece sol kenardan 10 ölçekle başlamanın ortalanması gerektiğini ve iPhone ekranınızın sağ kenarından 10 ölçek uzağa bitmesi gerektiğini varsayıyorum. Şimdi, bu, genişliğin ekran boyutuna göre farklı olacağı anlamına gelir, ancak yüksekliği aynı olacaktır.

Yani, sadece boyut denetçisinde,

enter image description here

Bildirimi kutusundan fırlayan 1 metin için yol aşağıdaki sınırlamaların ekleyin, bir şekilde metin kutusunun başlangıç ​​noktası, x ve genişlik ayarladığınız sol kenardan 10 pt ve sağ kenardan 10 pt uzaklıktadır. Endişelenme, sadece basit matematik. 2 metin alanına

, sana,

enter image description here

Son olarak, düğme için, kaynak sıkıntısı olan aşağıdaki-

enter image description here

Şimdi aynı yolu-kısıtlamayla eklemek gitmek güzel. Her şey ortalanmış.

Bu yardımcı olur umarım.

+12

Ağlamak istiyorum. Ve android'in XML düzenlerinin korkunç olduğunu düşündüm. – Josh

+0

Bir kez, otomatik düzen ile alışırsınız, bu sizin en iyi arkadaşınız olacak, ama evet, öğrenme eğrisi çok sıkı olabilir çünkü aslında ne yapmanız gerektiği ve neleri yapmanız gerektiğini anlamak için deneme yanılma sürecinden geçmeniz gerekir. 't. Ayrıca birçok yol var, aynı şeyi elde edebilirsiniz. – Natasha

+0

@Josh Bu saçmalık için XAML'den vazgeçmeniz gerekiyorsa ağlarsınız. Microsoft, Nokia telefon edinimini yazdığı gibi hayattır. Mermiyi burada ısırmak. – Stonetip

1

Film şeridi penceresinin altındaki boyut sınıfı seçiciden faydalanmanız gerekir.

bir iPhone 6 veya 6 kişilik Yani

Artı portrede böyle bir kompakt genişlik ve düzenli yüksekliğini seçsin:

enter image description here

Ve sonra yapacağını orada verilen cihazın

için ne olursa olsun otomatik düzen şeyler
+0

Tamam, bu seçimi portre için yaptıktan sonra, otomatik düzende bundan sonra ne yapmam gerekiyor? IPhone 6 için çalışmasını isterim, sadece portre kullanıyorum, bu yüzden manzara moduna uyması gerekmiyor. – cheznead

4

Boyut sınıfı seçicinizi storyboard penceresinin alt kısmında kullanarak, size boyutlar genişlik ve yükseklik olarak ayarlayın ve ardından aşağıdaki otomatik düzen kısıtlamalarını izleyin. Senin için çalışacak.

enter image description here

İlk yukarıdaki resimde gösterildiği gibi otomatik düzenini ayarlamak ve sonra storyboard sağ alt köşeden pim seçeneğini seçip, kısıtlarını eklemek istediğiniz görünümü seçin ve Add 4 constrains

butonuna tıklayın

Tüm görünümler için işlemi tekrarlayın ve kısıtlamaları Fix the top, bottom, left and right constrains of all views except the last button that should be fix from top,left,right and fixed height olarak ayarlayın.

+0

Varsayılan olarak herhangi bir genişlik ve yüksekliktir. Sabitleri nerede yapabilirim? – cheznead

+0

@shinnyWhack Varsayılan olarak herhangi bir genişlik ve yükseklikte ise, sadece görünümlerinizi tek tek seçip yukarıdaki görüntüde gösterildiği gibi engelleri ayarlayın. Üst, sol, sağ ve sabit yükseklikten düzeltilmesi gereken son düğme dışındaki tüm görünümlerin üst, alt, sol ve sağ kısıtlarını düzeltin. – iHulk

+0

Ama bu kısıtlamaları nerede ve nasıl gideririm? (Bu kısıtlamaları programlı olarak yapmak istemiyorum). Otomatik düzeni kullanırsam ve kullanırsam, hangi işlemi kullanırım? Tamamen yeni başlayan biri olarak çalışmak zor. – cheznead