我终于尝试在 IB 中采用自动布局,但在为某些对象设置约束时遇到问题。我基本上希望 5 个视图在整个超级视图中垂直均匀分布。我有 3 个按钮,由 2 行分隔。我希望间距 D1、D2、D3 和 D4 相等WITHOUT调整任何东西的高度。在IB中如何设置?
您可以创建UILayoutGuide
对象(或者,对于 iOS 9 之前的 iOS 版本,UIView
对象)对于 D1、D2、D3 和 D4,例如,spacer1
, spacer2
等,然后将它们的高度定义为相等。在视觉格式语言 (VFL) 中,垂直约束类似于:
@"V:|-[button1][spacer1][separator1(4)][spacer2(==spacer1)][button2][spacer3(==spacer1)][separator2(4)][spacer4(==spacer1)][button3]-|"
我不知道你如何表示你的分隔线(这里我只是使用 4 点高UIView
,但您可以按照您想要的任何方式进行)。但希望这能说明这个想法。
如果您在 Interface Builder 中执行此操作,则可以添加UIView
对象位于可见控件之间,然后选择所有间隔视图(例如,通过按住 Shift 键单击),然后添加约束以固定“高度相等”以使它们全部具有相同的高度。
您可以通过对间隔视图创建约束以编程方式实现类似的效果,而无需间隔视图NSLayoutAttributeCenterY
每个按钮和分隔线的属性并调整multiplier
每个值,使它们均匀分布。效果非常相似,但并不完全相同。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)