2016-04-14 62 views
0

我有一个单选按钮和一个标签。我需要让它们在NSView中水平对齐,这样单选按钮位于标签左侧: [单选按钮] [标签]使用IB中的自动布局水平对齐两个视图

这似乎是一件相当微不足道的事情,但是当它在IB,我最终将标签放在按钮上方(或者下方)。如果我以编程方式应用约束条件,我就可以得到我想要的。下面是程序上的约束:

[self addConstraints:[NSLayoutConstraint 
          constraintsWithVisualFormat:@"|-5-[_deviceButton][_statusLabel]-20-|" 
            options:NSLayoutFormatAlignAllBottom 
              metrics:nil views:views]]; 

在IB,我用“尾随空间集装箱”,“顶层空间集装箱”,“底部空间集装箱”,“领导的空间容器”这两种观点,我设置两个视图之间的“水平间距”约束。 IB中可能会缺少什么?我之前做过这件事,但不能为我的生活得到它正确的? 谢谢

回答

0

如果我正确理解你,你希望这两个按钮的组在你的视图中居中。在这种情况下,将两个项目嵌入视图(选择它们,然后转到编辑器>嵌入>自定义视图),然后您可以在视图中将该容器视图水平居中。

0

您不希望所有这四个限制条件都为这两个元素。您想要成为这两个视图中最左边的按钮应该被限制在顶部的容器上,的顶端和底部;标签应限制在其顶部的容器上,尾随和底部。将按钮的右边缘水平约束到标签的左侧。 (你会注意到这正是你的视觉格式产生的结果。)