让我的应用程序支持iPhone 5

时间:2013-01-22 22:25:58

标签: ios xcode ios6 autolayout

我无法让我的应用程序在iphone 5上看起来不错,甚至可以合理地呈现,这是一团糟。我不知道从哪里开始。滚动视图位于随机位置,应用程序底部是灰色条。我试图通过在故事板中移动东西来使其工作,但随后这将废旧它的旧屏幕。我也切换了自动布局,但该应用程序无法在ios5上运行。任何帮助都将受到大力赞赏。干杯

2 个答案:

答案 0 :(得分:1)

一般情况下,如果您的弹簧和支柱(或UIAutoresizingMask s)设置正确,则启动iPhone 5不应该花费太多额外的精力。此外,如果您使用的是[someView setFrame:CGRectMake(hardCodedX, hardCodedY, hardCodedWidth, hardCodedHeight)];等代码行,那么您只是为失败做好准备。您需要重构此代码以使用相对于设备(或superView)的屏幕大小的位置。对于使用弹簧和支柱无法实现的复杂子视图布局,您可以覆盖layoutSubviews并在那里进行复杂的设置。

正如您所说,如果您支持iOS 5,则不能选择自动布局。

您可以在故事板中找到弹簧/支柱。我在这里用红色概述了它: enter image description here

如果将鼠标悬停在具有各种工字梁的方框上,您可以模拟所选视图的大小调整(当您增长和缩小时,您会看到框右侧的图像有生命力。)< / p>

为每个视图设置弹簧和支柱。这些可以使用自动调整掩码以编程方式设置。对于盒子两侧的4个工字梁,实线基本上意味着“将视图固定在该位置”。对于中间的两个垂直条,实线表示“视图在此方向上是柔性的”(宽度或高度)。

弹簧和支柱都与视图的超视图相关。

例如,如果您希望将视图锚定到其超级视图的顶部,但随着其超级视图的增长而增加其高度(例如,如果屏幕比iPhone 5更高,则视图控制器的主视图会增长),你会希望顶部的工字梁是一条实线(将我固定在顶部),而盒子内部的垂直线要是实心的(让我和我的超视图一起增长我的高度)。当你现在鼠标悬停在盒子上时,你会看到右边的图像顶部固定,但是在垂直方向上增长和缩小。

答案 1 :(得分:0)

通常,在新的iPhone 5屏幕上显示您的应用程序很容易。即使没有一点代码,使用故事板也可以通过几个简单的步骤完成。

  1. 不要压力
  2. 如果要保持向后兼容性(iOS 5及更低版本),请确保在文件检查器中禁用AutoLayout:
    Disable AutoLayout
  3. 选择 / storyboard中需要根据iPhone 5屏幕调整大小的项目。然后选择尺寸检查器:
    Size Inspector
  4. 请注意其中带有红线的白色方框,标题为“Autosizing”(我相信这些是 弹簧/支柱jrnstone refers to)。
  5. 单击外框中的红线将告诉iOS当屏幕大小不同或方向发生变化时如何对齐对象。内部框将告诉iOS如何调整对象的大小。 “示例”框显示了该对象的大小。
  6. Xcode还允许您通过单击Storyboard Editor右下角的Form Factor按钮预览应用在不同屏幕尺寸上的显示效果:
    enter image description here