使 UIView 与其超级视图的距离成比例[重复]
Posted
技术标签:
【中文标题】使 UIView 与其超级视图的距离成比例[重复]【英文标题】:Make the distance of a UIView to its super view proportional [duplicate] 【发布时间】:2017-08-30 15:51:19 【问题描述】:你看到橙色部分是 UIView,白色部分也是 UIView。橙色视图是白色视图的超级视图。
我已将白色视图的约束定义为“底部空间到超级视图 140”和“顶部空间到超级视图 219”,看起来像iPhone7 中的这个:
如果我切换到较小的屏幕,例如iPhone 4,它看起来如下:
如您所见,小屏幕中的白色区域变小了。
请问如何让白色区域在设备屏幕的面积比例不变的情况下占据相同的百分比? (我的意思是如何使白色视图的顶部和底部距离与超级视图成比例,而不是像我所做的那样固定底部和顶部的空间会产生问题)
===== 更新 ====
我按照@Phillip Mills 的简单回答,设法使白色区域的高度 与超级视图成比例,但是,我遇到了一个新问题,xcode 抱怨 Y 定位 白色区域。同样,如何使 Y 定位 与 高度 成比例?
【问题讨论】:
它不是重复的,因为链接帖子中的答案说“编辑器 -> 引脚 -> 宽度相等”,但我在 xcode8 中找不到它 【参考方案1】:使用使子视图高度等于父视图高度的约束。然后将约束中的乘数改为小于 1 的浮点值。
【讨论】:
好的,谢谢,它就像你建议的那样工作,但是只定义了白色区域的高度与超级视图成正比,我还需要定义高度的Y位置吗?如何定义 Y 位置的比例? @Leem.fin 您可以通过两个视图之间的居中约束来执行基本相同的操作,调整乘数以定位您喜欢的任何偏离中心的位置。 在我的情况下它是居中的垂直约束还是水平约束? 垂直y。 谢谢@Phillip Mills,你知道我应该在这种与超级视图成正比的东西上搜索什么教程吗?我想对它有一个具体的学习。以上是关于使 UIView 与其超级视图的距离成比例[重复]的主要内容,如果未能解决你的问题,请参考以下文章
如何仅使用情节提要使 UILabel 的 UIView 超级视图适合 UILabel 的固有高度?