【发布时间】:2014-11-13 14:52:59
【问题描述】:
我有一个现有的纯横向应用程序,我正在尝试添加对 iPhone 6 / iPhone 6 Plus 的支持。当我支持 iOS 6 / 7 时,我只是使用了默认命名的启动纵向图像,并将横向图像旋转为纵向(即,对于 4 英寸屏幕,我创建了一个 1136x640 的横向,然后旋转以创建一个 640×1136 的启动图像。)
我正在尝试让一些适用于 iOS 8 和 iPhone 6 / 6+ 的东西,但还没有想出一些适用的东西。以下是我尝试过的一些事情:
- 遵循 4" 屏幕启动图像约定的模式。我创建了 Default-667h@2x.png 和 Default-736h@3x.png 图像。这确实欺骗了模拟器以正确的 iPhone 6/6+ 分辨率运行,但是当启动时,使用的是 4" 屏幕启动图像,而不是我创建的新图像。
- 使用资产目录 - 我在 LaunchImages 资产中为 iPhone 6 和 iPhone 6 Plus 创建纵向启动图像,并为 iPhone 6 Plus 创建横向启动图像。 iPhone 6 Plus 可以工作,但 iPhone 6 只是显示黑屏。 (无法在资产目录中创建 iPhone 6 横向启动图像)
- 在 Info.plist 中指定 UILaunchImages 数组,其中包含所有屏幕尺寸的条目(请参阅参考资料https://developer.apple.com/library/content/documentation/General/Reference/InfoPlistKeyReference/Articles/iPhoneOSKeys.html#//apple_ref/doc/uid/TP40009252-SW28)。我在这里得到了与资产目录类似的结果。我可以让 iPhone 6 Plus 横向工作,但不能让 iPhone 6 横向工作。
【问题讨论】:
-
从 Xcode 6 开始(如果我没记错的话),您可以使用 xibs 或故事板来实现启动屏幕(“splash”)。它可能不适用于每个应用程序,但可以省去很多 DefaultXXX.png 的麻烦。
-
有同样的问题。 iPhone 6 每次都黑屏。
-
我尝试做 .xib 启动屏幕文件,它的工作,但我不知道如何支持不同的 iphone 屏幕尺寸的图像的多分辨率!
-
.xib 文件仅适用于 iOS 8,对于不同的 iOS,我们仍然需要图像资源。
-
向 Apple 发送错误报告。