3

我有一个奇怪的情况。我在情节提要上创建了一个非常简单的屏幕,其中包含一些按钮,然后当我运行模拟器(说模拟器或模拟器是否正确?)时,其中一个按钮的间距错误。

我正在添加屏幕截图。模拟器位于情节提要屏幕的右侧。

知道为什么会发生这种情况吗?

在此处输入图像描述

我还以为是按钮的问题。它可能是。但是当我拿出两个较低的按钮时,我得到了一些更奇怪的东西,如下图所示:

在此处输入图像描述

谢谢!

4

3 回答 3

4

看起来您正在使用自动布局,并且除了 Investment 之外的所有按钮都具有 Top 约束,而 Investment 具有 Bottom 约束,导致 Investment 到底部的距离在屏幕变高时保持不变。

点击投资按钮,点击顶部菜单中的[编辑器 -> 引脚 -> 顶部空间到 Superview]。

再次点击投资按钮。单击右侧面板中右侧的第二个选项卡(您可以设置框架的选项卡)。查找 Top Space to Superview 约束,右键单击并删除。如果没有,那么 XCode 就完成了它的工作。再次尝试运行模拟器。

编辑:我只想说,当您刚刚拖入 xib 的视图位于其容器的上半部分时,XCode 习惯为您添加 Top 约束,而当它位于下半部分时,为您添加 Bottom 约束。我知道 XCode 试图提供帮助,但有时它让我发疯。

于 2012-12-13T05:20:52.083 回答
3

看起来您正在使用 3.5" 模拟器并为 4" 设备布局,因此将调整视图大小。

如果您使用自动调整大小蒙版,按钮上的某些自动调整大小蒙版是否不正确?您可能希望它们都停留在屏幕顶部。检查以确保每个按钮的自动调整大小与此图像匹配。(您需要单击“标尺”图标才能查看这些设置。)

自动调整图片大小

于 2012-12-13T00:43:47.020 回答
1

我假设您使用的是默认提供 NSAutoLayout 的 XCode4。当您将对象放置到情节提要时,NSAutolayout 会自动创建约束,这些约束会针对不同的设备(iPhone4、iPhone5)或方向(纵向/横向)自动在屏幕上布局对象。请检查 NSAutolayout 类和约束。如果您愿意,您可以删除 NSAutolayout 并且您的对象将正常显示在模拟器上,但在这种情况下,您必须手动调整对象以适应不同的方向和屏幕

希望有所帮助。

于 2012-12-13T00:43:28.680 回答