Ios 支持iPhone 6和iPhone 6+,具有不同的启动/启动屏幕图像,用于iPad纵向和横向

Ios 支持iPhone 6和iPhone 6+,具有不同的启动/启动屏幕图像,用于iPad纵向和横向,ios,cocoa-touch,ios8,iphone-6,iphone-6-plus,Ios,Cocoa Touch,Ios8,Iphone 6,Iphone 6 Plus,我从可用的文档和测试中了解到 iPhone 6和6 Plus上的所有现有应用程序都以兼容模式运行, 这意味着像[UIScreen mainScreen]这样的API将 退回320x568 iPhone 5/5s,新iPhone 6/6 Plus和 iOS将所有UI缩放到正确的分辨率 为了支持iphone6/6Plus,我们需要为启动屏幕创建xib 文件->新建->文件->用户交互->启动屏幕并设置nib文件 作为启动屏幕文件 我们可以在启动屏幕nib文件中为启动屏幕设置不同的图像 关于可用的大小

我从可用的文档和测试中了解到

iPhone 6和6 Plus上的所有现有应用程序都以兼容模式运行, 这意味着像[UIScreen mainScreen]这样的API将 退回320x568 iPhone 5/5s,新iPhone 6/6 Plus和 iOS将所有UI缩放到正确的分辨率

为了支持iphone6/6Plus,我们需要为启动屏幕创建xib 文件->新建->文件->用户交互->启动屏幕并设置nib文件 作为启动屏幕文件

我们可以在启动屏幕nib文件中为启动屏幕设置不同的图像 关于可用的大小类。[基本上是任意、规则 和紧凑型]

从纵向上看,无法区分iPad和iPad 在横向方向上,两者都是规则宽度和规则高度。 同样,也没有办法区分iPhone4/4s和iPhone 5/s

有没有一种方法可以支持iPhone 6/6 Plus模式,并为iPad提供纵向和横向的不同发布图像


另请参见此处的类似问题

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

它可以在应用程序图标和目标下的启动图像中找到:

如果没有LaunchImage资源,只需转到您的Images.xAssets,进行二次单击右键单击并选择New Launch Image:

结果是这样的:

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

希望能有帮助


Cheers

资产目录目前在iPhone上以横向模式工作。我得到了苹果支持部的回复:

资产目录和应用程序中的启动图像存在错误 在iPhone上的横向发布。在幕后,资产 目录编译器在目录中生成相同的UILaunchImages键[1] 指定时本应添加的final Info.plist 手动启动图像。每个启动映像的一个子键 在UILaunchImages键下指定的是UILaunchImageOrientation 资产目录编译器始终将其设置为“纵向”。这 这是有道理的,因为iPhone上的应用程序总是以纵向方式启动 方向[2]。但是,iOS应用程序启动器决定: 您的UI支持的界面方向仅包含 UIInterfaceOrientation和景观左和右 UIInterfaceOrientation和景观对,它只会寻找景观 在UILaunchImages键下启动图像,但找不到该键

因为无法强制资产目录编译器指定 iPhone的UILaunchImageOrientation子键的横向 启动映像,您应该继续通过以下方式指定启动映像: 像以前一样编辑应用程序的信息属性列表


如果您将iPhone 6文件命名为@3x,我的理解是它使用了设备可用的最佳分辨率-736h@3x已添加到我的项目中,但该应用程序仍在iPhone6Plus的兼容模式下运行。更好的使用方法来自此处接受的答案-我已经这样做了但我的应用程序仍在iPhone6 plusWell的兼容模式下运行,我只需要在iPhone6上进行测试,这就是我所要做的一切,以支持新的分辨率。您是否也更新了应用程序图标以支持@3x?@HorseT,这是一个很好的提示,您实际上不需要启动屏幕文件。谢谢。注意:如果您保留launchscreen.xib,在ios 8+设备中,资产中的此launchimage将被忽略。是否有任何关于何时修复已知错误的信息?我一直在不断搜索以了解此问题。这是我见过的最有用的信息。它解释了为什么每个人建议的plist黑客是安全的,以及为什么它有效。