启动图像未显示在iOS应用程序中(使用Images.xcassets)

时间:2014-12-31 16:13:01

标签: ios xcode asset-catalog launchimage

我的启动图像显示在我的应用程序中时遇到了一些麻烦。

我在名为“LaunchImage”的资产集中的Images.xcassets文件中创建了所有静态图像文件。

我注意到我的项目还包含一个LaunchScreen.xib文件(由Xcode自动创建)。

当我在iPhone6设备上运行应用程序时,会出现此.xib文件。它没有出现在iPhone4s的模拟器中(这是有道理的,因为xib启动画面仅适用于iOS 8 +)。

我想使用我创建的静态图像,因为它们属于Apple指南,并且与我的应用程序一起使用。但是,我没有任何运气让它显示出来。

我注意到在项目设置下有一个名为App Icons and Launch Images的部分。我看到.xib是如何通过我假设的启动屏幕文件选项连接的。

但是,有一个名为Launch Image Sources的选项。这是做什么的?

我发现了这个:http://matthewpalmer.net/blog/2014/09/10/iphone-6-plus-launch-image-adaptive-mode/。但是,它没有解释有关Launch Image Source选项的任何信息。

Launch Image Sources旁边有一个名为“使用资产目录”的按钮。当我点击它时,它只是说将启动图像迁移到资产目录。您现有的启动图像将被复制到新的图像集中。选择要使用的资产目录:。

这让我感到困惑,因为我已经创建了我的资产目录,我绝对不希望它覆盖images.xcassets文件。那么,我如何将其链接到我已经创建的Launch Images资产集?它所引用的“现有发射图像”还将被复制到新的图像集中吗?

谢谢!

UPDATE 1

所以,我尝试了migrate images选项并选择了新的set选项。这导致我删除了一个新的图像集。但是,启动图像源中保留的名称设置为LaunchImage,它以某种方式连接到包含我的启动图像的图像集。它确实弄乱了我的LaunchImage集 - 图像被设置为未分配。我删除了它们并将我的文件拖到LaunchImage资产集中的相应框中。但是,当我运行应用程序时,它仍然无法正常工作。 =(启动图像未显示。

我甚至删除了Launch Screen File中的信息(我的假设是连接到.xib文件的设置)。不过,某种程度上.xib文件出现在我的iPhone6设备上。 =(

任何想法发生了什么?

13 个答案:

答案 0 :(得分:55)

我有这个问题。我在模拟器上测试过。我离开了#34;启动屏幕文件"空白并删除了关于"启动屏幕文件"在plist里面。我重启了Xcode。没有。在我的情况下,不是黑色,它是白色的。 Xcode 7的目标是9。

我也读了这篇文章:Launch Image does not show up in my iOS App

当我从模拟器中删除应用并再次运行应用时,启动图片才会显示。

答案 1 :(得分:44)

我终于明白了!

因此,在项目设置中,请转到说明App Icons and Launch Images

的部分

如果您不想使用.xib文件,请删除Launch Screen File中的信息。

然后,在Launch Image Source中,选择要迁移,如果您已经创建了LaunchImage文件并将图像添加到其中。然后单击显示的资产目录。包含启动图像的名称。

这将在您的图像集中创建一个新的Launch-Image2。要使用您已创建的那个,请单击“启动图像源”旁边的下拉菜单。你应该看到你的其他Launch Image集。选择它。然后重新构建您的应用程序并运行它。你应该看到你的Launch Image。 =)

希望这有帮助!

注意:它不会删除您在资产目录中已有的图像。它只会创建一个新的LaunchImage资产集。

参考:https://developer.apple.com/library/ios/recipes/xcode_help-image_catalog-1.0/chapters/StoringAppIconsandLaunchImagesinanAssetCatalog.html

答案 2 :(得分:31)

这太重要

应该为空Launch Screen File

enter image description here

答案 3 :(得分:14)

工作解决方案。节省了我的时间,希望它也可以节省你的时间。

  • 根据Apple Guidelines确保您的图片尺寸准确。
  • 确保您只选择一个选项,即启动屏幕文件或启动图像源。您可以在项目构建设置中找到这两个选项 - >一般

清洁和建造。

逐步推荐的解决方案:

  1. 在其中创建启动图像资源(名称为LaunchImage) Image.assests文件夹。
  2. 启动图像源选项中选择LaunchImage资产。
  3. 清除启动屏幕文件选项中的文字。
  4. 清洁和建造。
  5. 以下是正确配置的参考图片:
  6. enter image description here

答案 4 :(得分:1)

今天有类似的问题。试图让xCode自动创建资产,但它始终是未分配的。

解决方案是手动创建ImageAsset中的Launch Image并为其各自的分辨率分配文件。

看起来xCode创建了一种不同类型的Launch Image资产,所以它没有 认可资产(v8.3.2)

答案 5 :(得分:1)

我在XCode 9.4.1中遇到了这个问题,原来是由于资产文件夹未包含在捆绑资源中引起的。 选择项目,然后选择目标。转到“构建阶段”,然后打开“副本捆绑资源”。如果您要使用的.xcassets组未列出,则只需将其从文件浏览器中拖入即可。

为我工作...

答案 6 :(得分:0)

我只想出了这个。我的启动图像没有显示,我在设备(iPhone 6,7 +)或testFlight上启动时会出现白屏。修复:重命名" Landing_screen.png"只是" Landing_screen"删除.png部分。 https://stackoverflow.com/a/43592662/3445278

答案 7 :(得分:0)

解决了!我已经尝试了很多。问题是启动图像显示在模拟器中,并没有在真实设备中显示。我有一个带有UIImageView的故事板。奇怪的是,旧的图像工作,图像,我最近添加没有。首先,我认为这是资产问题。不是。我检查了颜色配置文件并使用不同的配置文件进行了大量尝试:左图像,右图不工作。没有帮助。 enter image description here

然后我开始谷歌并找到了this线程

此处的主要解决方案:

1)对我没有帮助。

  

使用预览应用更改我的启动图像的图像属性:[工具    - >分配个人资料... - > ColorSync配置文件:<> ]

2)帮助

  

即使删除应用程序并从XCode重新安装也不起作用。   但是,更改捆绑ID确实有效。没有其他变化,   现有捆绑包ID不显示任何图像,但新捆绑包ID显示它们   一切都正确。我这样做是为了临时解决,因为a   此主题中的上一篇文章建议通过安装构建   TestFlight没有遇到问题。

3)

  

我做了三件事(前两件他们自己没有这样做,但可能已帮助第三件做了工作)
  1)将所有图像复制到根目录(与...相同的位置)   xcode放图像)
  2)在Images.xcassets中创建一个文件夹并将图像放在那里   3)最初调用launchScreen.xib中的图像   imageName.png。这被更改为imageName(删除文件   扩展

     

第三件事后,图像出现了。我不知道是否有   前两个步骤是必需的,但希望它会帮助某人。

4)帮助但是老而粗鲁

  

从资产目录中取出图像为我解决了问题。   我刚刚在启动画面上添加了@ 1x,@ 2x和@ 3x图像   旧项目的项目似乎工作正常。尝试去   现在通过TestFlight确认,但iTunes Connect没有表现   此刻。

我认为这是iPhone现金问题。所以你不需要警告它,因此在使用testFlight安装时会显示图像。在得出这个结论之后我接下来做了工作

1)卸载应用程序
2)重启电话
3)将应用程序构建到手机

答案 8 :(得分:0)

关闭模拟器,然后再次打开它对我有用

答案 9 :(得分:0)

我遇到同样的问题。

在初始屏幕中,图像未显示,但标签和视图等其他东西却正确显示。

要解决问题,请首先验证代码中的所有上述设置。如果没有任何效果,那么重启iPhone 解决了我的问题。

希望对这里的人有帮助(很乐意帮助):)

答案 10 :(得分:0)

我在同一个问题上花了一段时间,但找到了答案,并将其放入Youtube Tutorial

  
      
  1. 创建ArtWork图像。符合Apple对Appicons和LaunchImages的要求的1024x1024
  2.   
  3. 设置一个文件夹来保存您新创建的Assets.xcassets
  4.   
  5. 打开Asset Creator Pro并将新图像拖入其中。
  6.   
  7. 首先执行您的应用程序图标,将创建的文件放入新文件夹中。
  8.   
  9. 使用SAME图像,然后选择LaunchImages,然后将创建的集“追加”到新的现有Assets.xcassets中。
  10.   
  11. 打开您的XCode项目,然后删除新兴的-可能为空-Assets.xcassets文件夹。如果您还有其他文件,那么   删除Appicons和Launchimages集。
  12.   
  13. 将新创建的资产拖到XCode项目中,确保将选项设置为“复制文件”。有时可能会关闭!   提防。
  14.   
  15. 检查腹部的内容,您应该会看到新图像。
  16.   
  17. 确保项目设置中的“启动屏幕文件”行为空白。
  18.   
  19. 确保您的LaunchScreen故事板是空白的。那里的任何东西都不会加载图像。
  20.   
     

测试它。

观看视频。

答案 11 :(得分:0)

经过几个小时不清楚的答案:
1)转到在xCode中设置应用的“常规”部分。
2)向下滚动到“应用程序图标”并启动图像。
3)清除启动屏幕文件(将其保留为空白)
4)将启动图像源设置为LaunchImage(记住要在Assets.xcassets中创建它们)
现在,应用程序将使用您在LaunchImage中设置的图像。

答案 12 :(得分:0)

应该为空!启动屏幕文件

对我有用

相关问题