2013-02-23 15 views
13

widzę następujące dane wyjściowe w konsoliJak odczytać wyjście dziennika NSAutoresizingMaskLayoutConstraint?

"<NSAutoresizingMaskLayoutConstraint:0x100510500 h=--& v=&-- H:|-(0)-[NSView] 
    (Names: NSView:0x1016ab760, '|':NSClipView:0x1016a26b0)> 
    (Actual Distance - pixels):0" 

Normalnie rozumiem jak odczytać wiadomość zalogować do ograniczeń. Ale automatyczne ograniczanie maski zawsze mnie myli. W jaki sposób następujące znaki w danych wyjściowych dziennika odpowiadają automatycznej zmianie rozmiaru maski?

h=--& v=&-- H:|-(0)-[NSView]

Obserwowałem kilka WWDC 2012 filmy, które nie do końca wyjaśnić czytanie ograniczenia układu auto-zmiana rozmiaru maski.

+8

możliwy duplikat [Podczas debugowania autolayout, co jest znaczeniem automatycznych znaków maski takich jak h = - & v = - & -?] (http://stackoverflow.com/questions/14290100/when-debugging-autolayout-what-jest-meaning-of-toresoreizing-mask-strings-s) – jrturton

+3

Proszę zobaczyć mój odpowiedź w połączonym pytaniu. – jrturton

Odpowiedz

1

jrturton opisuje pierwszą część wyjście debugowania w swojej odpowiedzi (patrz komentarze)

h = - & v = & -

Druga część jest taka sama dla Wszystkie autolayout ograniczenia:

H: | - (0) - [NSView]

To jest tylko podanie szczegółów na temat tego, jak maska ​​zamieniła się w ograniczenie. "H" oznacza poziomą, "|" oznacza kontener, w którym znajduje się twój widok (w tym przypadku NSClipView), - (0) - oznacza, że ​​jest ograniczony do 0 pikseli po lewej stronie widoku (w tym przypadku ogólny NSView).

Tak więc ograniczenie zostało dodane, łącząc lewą krawędź widoku bezpośrednio z jego widokiem. (Ponieważ prawa krawędź jest nieskrępowana, będzie pulsować na wietrze, tak jak mówi maska ​​autouzupełniania).

+0

Należy również zauważyć, że metoda "description" obiektu NSLayoutConstraint odzwierciedla sposób, w jaki została skonstruowana. Więc nawet jeśli utworzysz dwa semantycznie podobne więzy, będzie wyglądał inaczej w wynikach dziennika, gdy zostały skonstruowane inaczej. – toto

Powiązane problemy