2013-10-03 10 views
16

Czy ktoś mógłby mi pomóc zrozumieć różnicę między "końcem przestrzeni do kontenera" a "dolną przestrzenią do dolnego układu" w układzie automatycznego budowania interfejsu?Automatyczny układ scenorysu: "końcowe miejsce do kontenera" a "dolna przestrzeń do dolnego układu"

Interface Builder Auto Layout Constraints

Chciałbym umieścić ograniczenie układu w miejscu, która łączy dno celu dnie to superview. Oba powyższe brzmią, jakby powinni to osiągnąć.

Wszelkie wyjaśnienia byłyby bardzo mile widziane.

Odpowiedz

22

Prowadzenie/końcowe jest odstępem w poziomie. (Nie jest oznaczony jako "left" i "right", ponieważ zamienia się na języki pisane od prawej do lewej). Top/bottom to dokładnie to, co mówi.

"Do kontenera" i "do Przewodnika układu" są zdefiniowane inaczej, ale działają podobnie w praktyce. Ograniczenia "Do kontenera" kontrolują przestrzeń między elementem interfejsu a krawędzią jego widoku (lub innego elementu zawierającego interfejs). Ograniczenia "To Layout Guide" są szczególnym przypadkiem dla pionowych odstępów - ponieważ widoki rozciągają się pod przezroczystymi paskami nawigacji/stanu/kart w iOS 7, zazwyczaj chcesz kontrolować, gdzie element UI pojawia się w stosunku do tych zamiast do krawędzi widok.

Więc ...

Chciałbym umieścić ograniczenie układu w miejscu, która łączy dno celu dnie to superview.

"Przewodnik po dolnej powierzchni do dołu" jest tym, czego potrzebujesz. To spowoduje ustawienie odstępów względem dolnej części superwizycji, jeśli nie ma paska zakładek i względem paska kart, jeśli taki istnieje.

6

Trailing Przestrzeń

Przestrzeń od prawej krawędzi bieżącego widoku do następnej/widok sąsiada lub SuperView

Główny Przestrzeń

przestrzeń od sąsiedniego widzenia lub superview do lewej krawędzi bieżącego widoku

Podobnie Góra i dół odpowiadają górnej i dolnej przestrzeni.

6

Nie zapomnij odznaczyć „W stosunku do marginesu” enter image description here

0

dodać do już przyjętego odpowiedź Warto również zauważyć, że jeśli wymieniasz na stanowisku kontrolera w widoku z innym, mam ustalono, że wszelkie ograniczenia dla prowadnic układu nie są faktycznie używane. Nie przyjrzałem się dokładnym szczegółom, ale zakładam, że jest tak, ponieważ prowadnice układu są dostępne tylko w czasie, gdy kontroler widoku jest ładowany z storyboardu.

Z tego powodu zalecam używanie układu do kontenera, ale tylko wtedy, gdy zamierzasz zamieniać widoki kontrolera widoku.

Natrafiłem na to, gdy chciałem użyć scenorysu do utworzenia pustych stanów dla moich aplikacji.

przykład:

-(void)viewDidLoad{ UIView* replacementView = //view loaded from storyboard self.view = replacementView //Layout guide margins will not be followed in replacement view }

Powiązane problemy