水平空间约束仅在iPhone 6 Plus中不起作用?

时间:2015-04-20 14:50:59

标签: ios objective-c iphone xcode constraints

所以我移植我的应用程序以调整各种设备(iPhone 4 / 4S,iPhone 5 / 5S,iPhone 6 / 6P)。我的应用程序仅在纵向模式下运行,因此限制等应该非常容易。我一直在利用新的Xcode 6.2工具,例如预览工具和推断的视图控制器大小,所以每个设备只有一个故事板。但是我设置了所有必要的约束,应用程序在所有设备上运行并且看起来很棒,不包括iPhone 6P。但令我困惑的是iPhone 6P的预览看起来正是我想要的,但是当我在模拟器中运行时它不正确。请查看下面的图像以充分了解问题。

所需的外观如下:(它看起来像在iPhone 6P以外的所有设备上运行)

enter image description here

现在它在iPhone 6P上的样子:(你可以看到桌面视图向内移动了。

enter image description here

但是,如故事板中所示,预览显示正确:

enter image description here

这就是故事板中约束的样子: enter image description here

希望你现在能够理解这个问题并希望你能提供一些帮助,提前谢谢,随时请求澄清。

1 个答案:

答案 0 :(得分:1)

正如您在评论中确认的那样,问题是您正在限制视图边距而不是直接视图。

要停止约束现有约束的边距,请选择它并在Size inspector取消选中Relative to margin项目。

enter image description here

通过使用控制键拖动创建新约束时,在创建约束时按住alt(选项)键将切换边距选项。

enter image description here

如果您使用下方的弹出式菜单创建它,只需取消选中Constrains to margin

enter image description here

相关问题