如何在自动布局中使 view1 高度 = 3.7 view2 高度?

Posted

技术标签:

【中文标题】如何在自动布局中使 view1 高度 = 3.7 view2 高度?【英文标题】:how can I make in auto layout that view1 height will be = 3.7 view2 height? 【发布时间】:2015-06-13 03:13:09 【问题描述】:

我在屏幕上有view1view2。 也许这可以通过在代码中添加约束来完成。但我想知道所有解决方案。

还有如何实现 view1 高度 = 3 view2 高度?我认为这可以通过再添加 2 个视图 (viewAdditon1, viewAdditon2) 来完成。这样

view1 ,viewAdditon1, viewAdditon2 将具有相同的高度。也 view1.y 顶部 = view2.y 顶部。还有 viewAdditon1.y 底部 = view2.y 底部。 viewAdditon1.y 底部 = viewAdditon2.y 顶部。 viewAdditon2.y 底部 = view1.y 顶部。

还有疑问。如何制作方形视图?或者如何使 view1 高度 = 0.7 * view2 宽度?

还有疑问。如何在 view1 按钮和 view2 顶部之间留出空间 = 1/4 view3 高度?我知道可以在这个空间使用 view4 来完成。所以 view4 高度 = 1/4 view3 高度。 view4 将在 view1 和 view2 之间。也许还有其他解决方案?

【问题讨论】:

您是否需要在 Interface Builder 中执行此操作的解决方案? 我正在寻求任何解决方案。 这个问题太宽泛了。请一题一题。你的问题不应该是一堆问题。实际上,您要求的是完整的自动布局教程。虽然我很高兴您正在寻找这些答案,但这个问题的形式甚至不适合 Stack Overflow。要么提出一个具体的问题,然后寻求解决该问题的详细帮助,要么去查找 Apple 的自动布局文档并花一些时间来解决所有问题。 【参考方案1】:

这里是一个例子,说明如何使用 autolayout 通过 storyboard 将一个视图设置为另一个视图的 2/3:

假设您已经设置了这两个视图的除高度之外的所有内容。

现在控制从view2view1 的拖动。已选中Equal Heights

然后选择你刚才添加的这个包含。将Multiplier 更改为2/3

就是这样。

希望这可以帮助某人。

【讨论】:

还有问题。如何制作方形视图?或者如何使 view1 高度 = 0.7 * view2 宽度? @userIn*** 在这里您可以了解如何设置方形视图 ***.com/questions/15167607/… 如果随时为我的答案投票,谢谢! 再次感谢。我不是太酷的用户,无法投票。还有疑问。如何在 view1 按钮和 view2 顶部之间留出空间 = 1/4 view3 高度?我知道可以在这个空间使用 view4 来完成。所以 view4 高度 = 1/4 view3 高度。 view4 将在 view1 和 view2 之间。可能还有其他解决方案吗? @userIn*** 是的,使用隐藏的 view4 是目前实现这一目标的最佳方式。

以上是关于如何在自动布局中使 view1 高度 = 3.7 view2 高度?的主要内容,如果未能解决你的问题,请参考以下文章

如何更改自动布局约束

垂直自动布局两个视图,动态高度对齐顶部

如何使用自动调整大小和自动布局并更改其默认行为? [关闭]

如何在此布局中使内容 100% 高度和等高列?

如何在嵌套线性布局中使 imageButton 的高度占屏幕尺寸的 25%。 Android XML 横向布局

iOS自动布局与滚动视图:内容大小问题