ios - 按钮之间的自动布局边距仅在 4"屏幕上不正确

标签 ios interface-builder autolayout

我有一堆在 3.5 英寸屏幕上看起来很完美的 View 。当我在具有 4 英寸屏幕的 iPhone 5 模拟器上对其进行测试时,按钮之间的填充距离很远。

不仅仅是这个 View ,填充问题似乎总是发生在某些地方(例如,在 2 个按钮之后)。我认为这与 iOS 6 的新约束功能有关。我曾尝试过乱用这些值,但没有成功。我在 IB 中做所有事情并且启用了自动布局。

任何人都可以向我解释我必须做什么吗?

3.5 英寸屏幕 iPhone 4 看起来不错! 4 英寸屏幕 iPhone 5 边距关闭。

3.5 Inch screen iPhone 4 looks good! 4 Inch screen iPhone 5 margin is off

最佳答案

默认情况下,IB 将 View 固定到其父 View 的最近边缘;在您的情况下,顶部的两个按钮固定在顶部,底部的两个按钮固定在底部。当 View 被拉伸(stretch)以适合 4 英寸屏幕时,它们就会分开。

使用固定菜单明确创建您需要的约束(可能固定所有按钮之间的间距),然后删除将按钮固定到 super View 底部的约束。

我已经写了更多关于这个话题的文章(包括对你的具体案例的讨论)here如果你想要更详细的解释。

关于ios - 按钮之间的自动布局边距仅在 4"屏幕上不正确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15191266/

相关文章:

ios - 选项卡栏的 Interface Builder 问题

ios - 可以在不使用 StoryBoard 的情况下执行 segue 吗?

ios - 将图像添加到 bundle 的正确方法是什么?

ios - 如果由 Interface Builder 为 Xcode 4.5 和 iPhone 5 构建,如何使 View 中的控件不重叠?

ios - 为什么我在 Interface Builder 中设置的单元格高度实际上并未成为应用程序/模拟器中的高度?

ios - 自动布局 VFL : align all trailing in an horizontal constraint

iOS:使用 Autolayout/Storyboard 等距按钮

ios - 以编程方式在 UIView 上设置 ViewController

objective-c - 如何将多个 NSMutableDictionaries 中的键更改为当前值的 -1?

iphone - init 中设置的属性在 viewDidLoad 之后立即变为 nil?