我在面向 iOS 6 和 7 的纯横向应用程序上遇到了问题。Xcode 给了我以下警告:
需要 iOS 7.0 及更高版本的 iPhone Retina(4 英寸)启动图像。
如果我添加了所需的图像,当我在 iOS 7 上启动应用程序时,会显示一个黑色的启动图像。在 iOS 6 上,它可以正确显示。但是没有图像,它在 iOS 6 和 7 上都可以正常工作。
我已经在这个项目中使用资产目录,所以我认为这不是问题。
我真的很想摆脱这个警告,但我无法找到解决方法。
XCode 正在寻找 iPhone 的纵向方向。您需要为启动图像提供它,但不要让您的应用程序在设备处于纵向模式时旋转。
为此,您需要执行以下操作:
-(NSUInteger)supportedInterfaceOrientations
{
return (1 << UIInterfaceOrientationLandscapeLeft) | (1 << UIInterfaceOrientationLandscapeRight);
}
就这样!
就我而言(仅限横向应用程序),我可以通过执行以下操作来修复它:
在我的 Info.plist 中将肖像添加到 iPhone 支持的方向
在我的视图控制器中用supportedInterfaceOrientations 和preferredInterfaceOrientationForPresentation 替换shouldAutorotate: 方法。
将 application:supportedInterfaceOrientationsForWindow: 添加到我的应用程序委托中。
此外,我必须确保在 Info.plist 中首先列出纵向。Xcode 已将它添加到列表的末尾,但如果它在那里,它仍然会在启动时显示为黑色。移到顶部,iOS 在应用启动时正确检测到它。