【问题标题】:Horizontal space constraint not working in iPhone 6 Plus only?水平空间限制仅在 iPhone 6 Plus 中不起作用?
【发布时间】:2015-04-20 14:50:58
【问题描述】:

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

想要的外观是这样的:(在除 iPhone 6P 之外的所有设备上运行的外观)

现在它在 iPhone 6P 上的样子:(如您所见,tableview 向内(两侧)移动。

然而,正如故事板中所见,预览显示正确:

这是故事板中约束的样子:

希望您现在可以理解问题并希望您能提供一些帮助,提前感谢,请随时要求澄清。

【问题讨论】:

  • 查看您对违规视图的限制会很有用。您可能将内容限制在视图边缘,而不是直接限制在视图中。
  • 从您上一个屏幕截图来看,左前导约束似乎不等于 0。也许这是您的问题?
  • 您的前导和尾随约束常量是否设置为 0。
  • 在表格视图的最后一个屏幕截图中,您有一个前导空格到容器约束。那个有什么用途?尝试删除它。
  • @MrNickBarker 似乎我限制了视图边距,我怎么能直接限制视图,因为我看不到那个选项?

标签: ios objective-c iphone xcode constraints


【解决方案1】:

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

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

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

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

【讨论】:

    猜你喜欢
    • 2015-04-16
    • 2014-12-05
    • 1970-01-01
    • 2017-08-19
    • 1970-01-01
    • 2014-11-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多