2017-09-01 91 views
0

我已经离开Xcode一段时间了,所以我可能错过了最新的几个版本中的更改。视图的布局在Storyboard和模拟器(iPhone6和iPhone7)中看起来完全相同,但在我的iPhone 6上不同。我在Storyboard中没有警告或错误,并且我使用的是Xcode 8.设备的行为就好像它屏幕比模拟器更短 - 在故事板或模拟器上正确传播的东西,会在手机上垂直挤压在一起。这种差异的原因是什么?设备布局与模拟器或故事板不匹配

+0

IB有时会出现越野车,尝试选择故事板,然后在波纹管中显示“查看为”选择iPhone 4,然后选择iPhone 7 plus。现在检查你的布局是否仍然稳定,如果它没有正确自动调整大小,那么你的约束存在问题,如果它确实自动调整大小,保存故事板并在设备上再次尝试(这应该不会阻塞你的布局) 。为了确保我建议在再次构建之前清理您的项目(shift + command + k)并从设备中删除应用程序。 – Pochi

回答

1

您是否为不同的外形尺寸指定了正确尺寸的启动图像?验证这一点的简单方法是在视图控制器中添加打印语句以查看屏幕的界限。确认这些值与您对设备的期望值相符。

由于设备屏幕大小不同,推出屏幕尺寸也有所不同:

Apple该文件下面。为了适应这种情况,您可以提供一个启动屏幕作为Xcode 故事板或作为您的应用程序支持的设备的一组静态图像。推荐使用Xcode storyboard,因为 故事板是灵活且可适应的。

虽然不是苹果官方网站,this link还引用这是一个潜在的问题:

推出XIB或故事板需要支持iPhone 6的尺寸 应用。

另一种可能性是,您已将屏幕放大到设备上。要更改此设置,请转至设置>显示&亮度并选择显示缩放在底部。确保您选择了标准。如果放大,那么设备会缩小(A 6的行为类似于SE,Plus的行为类似于6/7)。

+0

谢谢,问题是手机的屏幕放大了。我不确定它是如何得到的,我不记得那样做了,但是当我第一次拿到手机时,我可能会忘记它。 – rdelmar

+0

@rdelmar酷,我们有一个SDET与这个问题,我们花了一段时间,以确定。 – CodeBender

+0

哇。自从我购买手机后,我绝对不知道自己在放大模式下运行。 –