视图和超级视图自动布局的比例高度

Posted

技术标签:

【中文标题】视图和超级视图自动布局的比例高度【英文标题】:proportional height of view and superview autolayout 【发布时间】:2018-09-28 09:01:36 【问题描述】:

我有一个小视图,我希望他占据 superview 1/3 的高度(与安全区域大小相同)

我用 superview.bottom 定义了前导空间、尾随空间、底部空间,其常量 = 0。

并且我想将高度设置为 superview 高度的 1/3,以使其在所有 iphone 尺寸中看起来都一样。我定义了纵横比并将其第一项更改为 superview.height,第二项更改为 thisview.height。当然我已经定义了 3:1 乘数

但它不起作用,它会给出以下错误

由于未捕获的异常“NSGenericException”而终止应用程序, 原因:'无法在视图上安装约束。是否有约束 从视图的子树之外引用一些东西?那是 非法。

加油!!为什么它不起作用?与所有其他东西相比,这并不复杂。 另外我怎样才能在界面上完成这个。 (不在代码中)我想在 xcode 上看到它以及预览选项卡中的所有其他屏幕尺寸。

非常感谢您的宝贵时间。

【问题讨论】:

请分享您如何设置此视图约束,正确设置 IB 屏幕截图 分享视图和其他相关视图的自动布局代码。 【参考方案1】:

设置视图Equal Heights 及其父视图。然后将Equal Heights约束的乘数改为1:3

【讨论】:

谢谢瑞奇。我知道我现在在哪里搞砸了:) 我尝试了高度限制,但看不到那里的乘数。现在我看到了等高或等宽到达该区域的位置。多谢。我不知道我浪费了多少时间来弥补。问候

以上是关于视图和超级视图自动布局的比例高度的主要内容,如果未能解决你的问题,请参考以下文章

如何使用自动布局动态更改超级视图的高度

自动布局中的比例距离约束

iOS:使用自动布局保持视图彼此按比例调整大小

自动布局高度成比例但有上限约束

使用自动布局垂直居中子视图

UIViews 的高度与屏幕的高度成比例(自动布局)