支持iPhone 6和iPhone 6以及不同的启动/闪屏图像,适用于iPad纵向和横向方向

我从可用的文档和我的testing中了解到的是

  1. iPhone 6和6 Plus上的所有现有应用程序均以兼容模式运行,这意味着API(如[UIScreen mainScreen] .bounds)将返回320×568(iPhone 5 / 5s),仍在新的iPhone(6/6 Plus)中,所有用户界面通过iOS调整到正确的分辨率。

  2. 为了支持iPhone 6 / 6Plus,我们需要为启动屏幕(File-> New-> File-> UserInterace-> Launch Screen)创buildxib,并将nib文件设置为“启动屏幕文件”。

  3. 我们可以在启animation面笔尖文件里设置不同的图像,用于启animation面。 [基本上任何组合,常规和紧凑]

  4. 无法区分纵向的iPad和横向的iPad(均为普通宽度的普通高度)。 也没有办法区分iPhone 4 / 4s和iPhone 5 / s。

有没有一种方法可以支持iPhone 6/6 Plus模式,还可以在纵向和横向为iPad提供不同的启动图像?

另请参见类似的问题在这里iOS 8的大小类为iPad景观

您不必使用启动屏幕文件来使您的应用程序iPhone 6/6 +分辨率兼容。 相反,您可以selectLaunchImage资产作为启动映像源。

它可以在您的目标下的“应用程序图标和启动图像”中find:

在这里输入图像说明

如果没有LaunchImage资源只需转到Images.xcassets,则进行辅助点击(右键单击),然后select“新build启动映像”:

在这里输入图像说明

结果是这样的:

在这里输入图像说明

现在只需拖放您想要支持的特定分辨率的图像,并将创build的LaunchImage资源设置为源。

希望能帮助到你

干杯

资产目录目前在ios8上的iPhone上以横向模式工作。 我有这个苹果支持的反应:

资产目录和应用程序中的启动图像存在一个bug,在幕后,资产目录编译器会在最后的Info.plist中生成相同的UILaunchImage键[1]在UILaunchImage键下指定的每个启动图像的子键之一是UILaunchImageOrientation,它总是被资产目录编译器设置为Portrait,这是合理的,因为iPhone上的应用程序总是以纵向方式启动[2]。但是,iOS应用程序启动器决定,由于您的UISupportedInterfaceOrientations仅包含UIInterfaceOrientationLandscapeLeft和UIInterfaceOrientationLandscapeRight,因此它只会在UILaunchImages项下查找风景启动图像,而其中找不到任何风景启动图像。

由于无法强制资产目录编译器为iPhone启动图像的UILaunchImageOrientation子项指定Landscape ,您应该像以前一样编辑您的应用程序的信息属性列表,以继续指定启动图像。