如何读取NSAutoresizingMaskLayoutConstraint的日志输出?

时间:2013-02-23 18:26:30

标签: cocoa logging autolayout autoresizingmask

我在控制台中看到以下输出

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

通常我理解如何读取约束的日志消息。但autoresizingMask约束总是让我困惑。日志输出中的以下字符如何与自动调整大小掩码相对应?

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

我观看了几个WWDC 2012视频,这些视频并没有完全解释自动调整大小的蒙版布局约束。

1 个答案:

答案 0 :(得分:1)

jrturton在他的回答中描述了调试输出的第一部分(参见注释)

  

H = - &安培; V =&安培; -

第二部分对于所有自动布局约束都是相同的:

  

H:| - (0) - [NSView]

这只是详细介绍了掩码如何变成约束。 “H”表示水平,“|”表示视图所在的容器(在本例中为NSClipView), - (0) - 表示它被视为视图左侧的0像素(在本例中为通用NSView)。

因此,添加了约束,将视图的左边缘直接绑定到其超视图。 (由于右边缘不受约束,它会在微风中翻转,就像自动调整面具所说的那样。)