gpt4 book ai didi

ios - 使用 Autolayout 和 Interface Builder 垂直分布/间隔屏幕元素

转载 作者:塔克拉玛干 更新时间:2023-11-02 09:44:46 24 4
gpt4 key购买 nike

我有一个相对简单的仅纵向 UI,布局在 Storyboard 中,其中包含我想垂直展开以填充 3.5 英寸和 4 英寸屏幕的项目。

换句话说,我希望调整控件之间的间距,以便 UI 很好地填充屏幕,而不管屏幕的形状因素如何。

这似乎不是一件不寻常的事情,但我无法让 Interface Builder(在 Xcode 5 中)添加正确的约束 - 我似乎只能让它添加固定垂直空间限制,不针对不同的屏幕尺寸进行调整。

有谁知道如何在不借助程序化 UI 构建的情况下做到这一点?我投入了大量精力来使基于 Storyboard 的 UI 恰到好处。

该解决方案需要同时适用于 iOS 6 和 7。谢谢!

最佳答案

如何做到这一点取决于当屏幕尺寸改变时你想要什么样的调整。一种方法是分别为父 View 的顶部和底部提供最顶部和最底部的 View 垂直间距约束。添加一个 View ,我通常使用一个没有文本的 UILabel,在你垂直堆叠的所有 View 之间,并让它们彼此具有相同的高度。给其中一个“间隔” View 一个固定的高度,但对其进行编辑,使其优先级小于 1000(这意味着它不是必须满足的)。然后在每个“真实” View 上方和下方的每个最近邻居和“间隔器”之间添加间距约束,这样您就可以通过垂直间距约束将所有 View 从上到下连接在一起。当屏幕尺寸改变时,唯一可以改变的是“间隔物”的高度,因为优先级小于 1000,所有其他约束都是强制性的。我的约束看起来像这样:

enter image description here

每个标签都与它们上方和下方的“真实” View 具有标准(8 磅)间距。顶部和底部 View 与屏幕边缘之间的间距应该是任意的。

关于ios - 使用 Autolayout 和 Interface Builder 垂直分布/间隔屏幕元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19995040/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com