启动屏故事板未显示图像

249

我试图在Launch Screen.storyboard文件中显示一个图片作为启动屏幕,但是这个图像从未显示出来。我的标签可以正常显示,但是这个图像却没有出现。

下面是Launch Screen.storyboard文件中启动屏幕的外观: 输入图像描述

然而,当我在模拟器上运行应用程序(以及物理设备上)时,它显示的却是这样:

输入图像描述

如您所见,“Test”标签可以正常显示,但是该图像未显示。我真的不知道发生了什么,也无法解决它。如果有人有任何想法可以帮忙解决,将不胜感激。


1
请确保您的图像以正确的 png 格式保存,而不是 jpg - Utkarsh Singh
4
多个截然不同的答案都获得了很多赞,这事实非常令人沮丧。 - user5306470
3
如果图像太大,加载时间过长,是否有可能将其从启动屏幕中丢弃? - Lubbo
3
对我来说解决问题的方法就是退出模拟器,然后重新运行项目。 - Rosalie W
4
哎呀!这个问题还存在。硬重启设备解决了它。 - mccbala
显示剩余3条评论
38个回答

9
在我的情况下,重置模拟器的内容和设置可以解决问题。

8

在尝试了多个StackOverflow线程上的所有方法后,以下内容对我有用:

  • 使用 .png 格式的图片
  • 不要将其包含在 Assets 目录中。直接将其添加到项目的层次结构中,就像添加任何源文件一样。
  • 在图像视图中,加载图片时包括其扩展名。例如:launch_app_image.png

(可能需要清理产品或派生数据以进行更新,但我没有必要)


2020年,这仍然是相关的。有时在目录中更改图像为新的PNG格式,当它有效时会停止它。不确定是否是压缩级别的问题,但普通图像文件可以正常工作。 - Mitchell Currie
尝试了上面解释的所有提示 - 除了 .png 文件外,都没有起作用。谢谢 Kqtr! - Rob

5

在xCode中似乎存在一些资源缓存问题。我也遇到过同样的问题,重启xCode后一切正常。


刚刚不得不拆开我的Mac,然后重新组装。我也为iPhone做了同样的事情。相机,一切都正常。运行得很好。 - RealNmae

5

重新启动您的设备并清除 Xcode 衍生数据。


4
实际上,对于一些较大的图片来说,将它们添加到images.xcassets中并不是一个好的选择,因为应用程序在启动前会先加载images.xcassets中的轻量级图像。因此,我将闪屏图片放在第一个根目录位置,这个问题就解决了:
  1. 在项目的根目录中创建一个新的Group
  2. 将您的图片拖放到黄色组文件夹中
  3. 将其重命名为一个特殊的名称
  4. 返回到您的xib(或storyboard)文件并将ImageView地址指向步骤3中的特殊名称。
  5. 再次清理和构建,然后您就可以看到您的图片了。
提示:您可以在images.xcassets中创建您的,但将它们放在项目的根目录中。

4

将图片导入为常规文件对我有效。不要从资产目录中添加图像!

在此输入图片描述

在此输入图片描述


所以我发现这种情况发生了,我也认为它与@图像有关。我删除了@2和@3,然后就可以显示出来了! - justdan0227
经过8个小时的头撞墙,我将.png图像重新导入为普通文件(在Supporting Files下)。iOS很高兴地显示其他的jpeg、Apple SVG和杂项PNG,但无论文件名、文件格式、大小、颜色、干净构建+从设备中删除、重新启动Xcode或以上任何其他解决方案,都不能显示客户标识。希望知道我错过了什么。(我已经使用iOS工作十多年了。也许只是一天运气不好。) - Andrew Kingdom
1
@AndrewKingdom不知道出了什么问题...尝试重新命名它,另存为JPEG格式(进行测试),然后将其调整大小/另存为新的PNG文件。 - Nik
1
重命名不起作用,重新导出为不同大小也不起作用。这是我见过的最奇怪的事情。我猜测这可能是Xcode中某个非常晦涩的错误或项目的某种损坏。感谢您的建议。 - Andrew Kingdom

3

我在将图片添加到项目并关闭设备后遇到了这个问题,但问题得到了解决。


3

更改启动画面的背景图片时,新图片没有显示 (react native 项目)。

按照其他人的答案进行操作。

我执行了以下所有步骤,问题得到解决:

  • 进行干净构建。
  • 从模拟器中删除应用程序。
  • 退出模拟器。
  • 重新启动 XCode。
  • 再次运行应用程序。

3
在我的情况下,启动画面在模拟器和其他设备上都能正常工作,但在一个特定设备上却停止了工作。这让我认为这可能是由xcode(v10和iPhone 7 v12.1)存储的一些缓存数据所导致的。
我删除了派生数据,路径为:~/Library/Developer/Xcode/DerivedData/ ,只清空文件夹内容,而不是删除整个文件夹。然后重新启动了Mac和iPhone,并且清理和重建了项目,现在它就能正常显示了。
我不确定这一切是否都是必要的,但我不想再浪费时间去找出更具针对性的方法,所以以上的粗暴方法对我很有效。当然,对于每个人来说,情况都会有所不同——对于其他人而言,问题可能是实际图片或启动屏幕布局等。

3

目前已经有retina设备可用,我忽略了在Assets.xcassets中的@1x图像。

在我的情况下,我在启动画面中有一个应用程序标志,但在运行应用程序时看不到它。

浪费了很多时间后,我发现我只提供了该标志图像的@2x@3x图像。

通过添加该图像的@1x版本解决了此问题。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接