【问题标题】:App resizes on deployment to iphone 6s - xcode应用程序在部署到 iphone 6s 时调整大小 - xcode
【发布时间】:2017-09-03 18:58:50
【问题描述】:

我有一个简单的单屏应用程序,带有两个按钮,在 xcode 的故事板上看起来很棒。一旦我在我的 iphone 6s 上运行该应用程序,它就会调整屏幕大小并且底部的按钮消失。看起来分辨率已经改变,并且该应用程序不适用于 iphone 6s 屏幕。

我已经尝试了以下方法但没有成功:

1) 在文件检查器菜单(实用程序下)中为我的视图控制器启用“使用自动布局”

2) 将部署目标设置为“10.3”,设备设置为“iPhone”,并在“常规设置”下选中“纵向、横向左侧和横向右侧”的设备方向。

是否有任何其他我可能遗漏的设置导致了这种缩放?我正在使用 xcode 8.3

编辑:我在 cmets 部分收到了一些很好的反馈,并了解了添加约束。我在这里添加了我的应用在添加约束之前和之后的截图:

这是我的 xcode 故事板(我希望在我的 iPhone 6s 上得到什么)

这是我手机上的截图(约束之前)

我尝试过像这样限制视图但没有运气(手机上的输出相同):

是否有一组特定的约束可以在这里完成这项工作?

【问题讨论】:

  • 这听起来像是 AutoLayout 约束问题。您需要检查您的约束,如果找不到问题,请提供有关您为约束设置的内容的屏幕截图/详细信息等,以便能够找到您的问题。在这里查看我的答案:stackoverflow.com/questions/45901928/… 并查看有关 AutoLayout 部分的屏幕截图可能会帮助您朝着正确的方向前进。 developer.apple.com/library/content/documentation/…
  • 故事板中设置的每个对象都需要设置约束(通过自动布局),以指定对象的位置 (x,y) 和大小。听起来你还没有这样做。
  • 感谢@MartinMuldoon 的建议,我已对问题进行了编辑并添加了屏幕截图。还尝试了一些带有约束的组合,但运气不佳。谢谢
  • 感谢@Sneak 的建议,我已经在此处的帖子中添加了屏幕截图,现在正在尝试限制。在我的情况下,任何关于此处可能需要处理哪些约束的建议都会非常有用。谢谢
  • @Veer NP,我强烈建议您花时间阅读教程并继续试验,直到您学会为止。 Google 和 YouTube 上有很多很多教程。 (例如youtube.com/watch?v=pwkpyzn7EOM)给你一个指针来设置一个简单的约束不会对你有任何好处或教你任何东西。掌握第一分钟/小时会有点困难,但花点时间学习和实验,你最终会掌握一切,一切都会变得容易

标签: ios iphone xcode


【解决方案1】:

您的屏幕截图显示您没有设置约束。最后一个屏幕截图显示您在根视图上设置了一些约束。就像 Martin 提到的那样,您需要为每个对象设置约束。

要将按钮正确放置在视图底部,您需要从按钮绘制到视图(按住 ctrl 键),然后选择底部、前导和尾随约束。

我建议用 InterfaceBuilder 制作一个 Autolayout 初学者教程。

【讨论】:

    【解决方案2】:

    感谢您的精彩回复。事实证明,这个解决方案与仅仅尝试约束有点不同。我花了大约 3 个小时才弄清楚这一点,我想在这里分享一个简单的解决方案,以防其他人将来遇到同样的事情。

    问题出在设置的“常规”部分。您的启动屏幕文件必须像这样反映 MainStoryboard:

    我的启动屏幕文件选项之前设置为空,这会导致问题。一旦我将其更改为 MainStoryboard,一切看起来都很好。 希望这对某人有帮助!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-07-02
      • 2011-03-22
      • 2015-02-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-10-19
      相关资源
      最近更新 更多