如何在XCode 6.1中集成所有类型iPhone的启动画面?

时间:2014-09-22 06:23:07

标签: ios8 xcode6 splash-screen uiimageasset

我需要创建和应用程序,它将在iPhone 4S,5,5S,6,6 +上运行,而depoloyment目标将是iOS 7.1。我看到Apple介绍了LauchScreens.xib用于创建启动屏幕(Splash Screen),还有一个Image Assets,我可以在其中提供Launch Images屏幕。见下图:

enter image description here

所以我的问题是我如何使用所有iPhone的启动画面?或者我应该说,当我使用XCode 6时,标准的方法是什么?

我一直在寻找答案,阅读博客和Apple的文档,但我找不到任何东西。一切都在唱自己的歌,但不是答案。

4 个答案:

答案 0 :(得分:69)

在所有设备启动画面的 Xcode6 中,您需要为每个设备尺寸的视网膜和非视网膜制作启动图像。

最好的方法是从目标使用资产目录 - >一般如下截图:

enter image description here

当您点击launchImage( - >)附近的右侧小箭头时,您可以看到以下窗口:

enter image description here

目前存在空白,因为从右侧没有选择任何目标,因此如果您的部署目标是6.0,则需要设置复选标记,如下面的屏幕截图,以便您可以看到所有图像需要框:

enter image description here

查看在目录中添加错误维度图片的时间,您可以在右上角收到警告,当您点按此警告时,您可以获得实际尺寸。请参阅以下屏幕截图:

enter image description here

因此,从警告日志中,您可以知道哪个维度图像需要哪个启动画面。

其他方式

无需使用Asses目录,无需使用 LaunchScreen.xib ,您仍然可以使用旧方式:

创建具有以下尺寸的初始屏幕图像:

Default-568h.png                   320 x 568      
Default-568h@2x.png                640 x 1136
Default-667h@2x.png                750 x 1334
Default-736h@3x.png                1242 x 2208
Default.png                        320 x 480
Default@2x.png                     640 x 960

现在在plist中你需要添加以下数据:

  • 点击(+)其名为UILaunchImages
  • 的行添加一行

enter image description here

  • 您需要像以下一样填写此行

enter image description here

没有必要做任何事情,希望答案对其他人也有帮助。

答案 1 :(得分:36)

在Xcode 6.4中,截至2015-07-06(yyyy-mm-dd),我使用了启动图像而不是启动屏幕文件(.xib)。这是针对iOS 7.1 +。

首先,从“启动屏幕文件”下拉列表中删除该条目。将其留空,如果这指向.xib,则.xib将覆盖启动图像源。以下是目标/常规/应用程序图标和启动图像中的设置。 /Users/patrickweigel/Desktop/Screen Shot 2015-07-06 at 10.20.36 AM.png

其次,在Images.xcassets中间窗格底部选择“+”后,创建一个新的启动图像(不是新的图像集)。选择“+”后弹出窗口。 enter image description here

第三,在新的Launch Image中,将有20个正方形,每个正在寻找.png文件。现在您需要创建20个正确大小的.png文件。我使用Pixelmator并将每个文件导出为.png。但是什么是“正确的尺寸”?见下文。 enter image description here

启动图像正确尺寸表 enter image description here ' *没有状态栏

答案 2 :(得分:30)

我现在有时会玩Xcode 6而我发现LaunchScreen.xib仅适用于iOS 8,所以如果你想为所有设备提供启动图像,你的应用支持你可以请按以下说明..

对于使用iOS 7的设备,您可以照常使用images.xcassets enter image description here

执行的操作

对于 iOS 8设备,您有两种方式..

  1. 只需使用LaunchScreen.xib即可。 enter image description here 此图像显示默认情况下Xcode如何为iOS 8启动屏幕文件设置LaunchScreen.xib

    1. 如果您不想将LaunchScreen.xib设置为启动屏幕文件,并希望在iOS 7设备中显示某些启动图像,那么只需删除启动屏幕文件名并将其设为空白(请参阅在图片下方)并从LaunchScreen.xib删除Xcode文件。在这种情况下,iOS 8设备还会从images.xcassets的启动图像中获取启动图像。 enter image description here

答案 3 :(得分:4)

从iOS 8开始执行启动画面的新方式是定义LaunchScreen.xib文件。这也可以作为XCode 6中的新资源文件类型使用。

这个新的XIB将使用AutoLayout和新的大小类来确定如何布局启动画面。

如果您想要支持旧设备,那么它的向后兼容性将如何起作用尚不十分清楚。我认为工作。

您可以在XCode项目的目标属性第一个屏幕中设置launch.xib。

如果您想使用旧方式,您仍然可以定义启动PNG以用作启动图像,这仍然是完全支持的。从我看来,如果你想支持旧的iOS版本,这仍然是唯一的方法。

请注意,如果您想支持iPhone 6/6 Plus的新分辨率,那么您必须定义启动xib或将正确大小的PNG放入资产目录中,否则您将获得旧应用程序以兼容性模式获得的模糊自动缩放UI。