【发布时间】:2015-02-09 03:48:24
【问题描述】:
我在 iPhone 5 英寸故事板上使用 Xcode 5 为 iOS 7 开发应用程序。我准备了我的应用程序及其按钮、图像和其他内容以适应 iPhone 5 的屏幕尺寸,然后以编程方式优化应用程序以适应 iPhone 4 和 4s。
然后 Xcode 6 出现了,还有两款新设备,iPhone 6 和 iPhone 6 plus。我在想我将不得不再次花几个小时以编程方式优化这些分辨率的应用程序。
但我尝试在我的新 iPhone 6 上运行我的应用程序,但奇怪的事情发生了。应用程序本身为我创造了一切。一切都在正确的位置和正确的大小,我什么也没做。
我看到 Xcode 6 现在使用 Size Classes 为多种设备开发应用程序。
但我没有在我的项目中使用大小类和自动布局,它可以工作吗?
然后我打开了新项目。在我的新项目中,调整大小不再像这样工作了。所以它不会自动调整我的按钮、视图和其他东西的大小。
有人知道发生了什么吗?
【问题讨论】:
-
如果您没有准备好新尺寸的正确资源,系统会自动将您的应用程序放大以适应新的屏幕尺寸。因此,您的应用可以正常运行,但不会达到原生 6/6+ 应用的大小。
-
@jshier 所以使用 Size Classes 对我来说更好吗?如果我在 Sprite Kit 中开发游戏会发生什么?系统会自动改变精灵的大小?
-
iOS 不需要使用尺寸类来停止缩放您的应用程序。您只需要一个适当分辨率的启动图像。
-
@jshier 可能是一个奇怪的问题。我必须在哪些选项中选择,我的应用程序将以不同的分辨率放大我的对象?就像我的旧项目一样?
-
你没有。它会在运行时自动完成,具体取决于您的启动图像是否是新屏幕的正确分辨率。