如何添加“对齐底部到:父视图”系统约束?
Posted
技术标签:
【中文标题】如何添加“对齐底部到:父视图”系统约束?【英文标题】:How to add "Align bottom to: parent view" system constraint? 【发布时间】:2013-10-30 08:37:26 【问题描述】:刚刚创建了一个演示单视图控制器项目。控制器视图包含集合视图,它包含单元格视图(橙色)。单元格视图包含一个视图(在内部选择),我需要将其与单元格视图的底部对齐。但是,当我在单元格视图中选择橙色视图时,按 Ctrl 并将其拖到单元格视图中,我看不到“将底部与容器视图对齐”或类似内容。只有“容器底部空间”选择,我不确定它是否具有相同的行为:
如果我选择“底部空间到容器”并且没有得到想要的“底部与父级对齐”系统约束:
我需要在现有代码库中添加一个具有自动布局的新标签,并且该标签必须位于具有“对齐底部到:父单元格”系统约束的现有标签旁边:
如果我选择我的新标签并按下底部的对齐按钮图标,则会有一些设置“底部边缘”。但是,无论如何,此选择都被禁用,我认为这是用户约束,但我需要系统约束“底部对齐:父单元格”。有什么建议为什么现有标签有这个限制,但我不能向新标签添加一个类似的标签?
【问题讨论】:
【参考方案1】:刚刚遇到了底部约束被固定到Bottom Layout Guide
(在我的情况下是一个TabBar)而不是superview
的情况,正如我想要的那样。
在修改了以编程方式创建和/或修改的约束后,我发现您实际上可以通过 Autolayout 的 Pin Popover 来实现,只需在下拉菜单中选择 View
而不是 Bottom Layout Guide
如果您单击约束文本字段的小箭头,则会出现。
这可能不是很清楚,所以在这里:
【讨论】:
感谢您澄清这一点! 答案似乎与问题关系不大,但解决了我的另一个问题并挽救了我的生命!非常感谢!【参考方案2】:添加Bottom Space to Container
约束是正确的方法。它将视图对齐到距其父级底部边缘的恒定距离。如果您添加该约束并且在调整视图大小时它没有导致正确的行为,则可能需要首先删除视图上的其他约束(考虑一个***约束)。
如果您发现设置更容易,您当然也可以将标签与其他标签对齐,完全忽略容器。
【讨论】:
谢谢。您有什么想法为什么单元格中的现有标签具有“对齐底部到:父单元格”系统约束,但我无法找到并将此类约束添加到也在同一个单元格(同一个容器)中的新标签?跨度> 对我来说,通过右键单击拖动添加Bottom Space to Container
约束会产生正确的“底部空间到:Superview”系统约束。使用弹出框,您可以通过从Pin
弹出框(不是Align
弹出框)中选择Spacing to nearest neighbour
来实现类似的效果。以上是关于如何添加“对齐底部到:父视图”系统约束?的主要内容,如果未能解决你的问题,请参考以下文章