启动屏故事板未显示图像

249

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

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

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

输入图像描述

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


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

2

我想补充一点关于这个问题的解决方法:我通过使用PNG图像而不是JPG/JPEG图像来解决了这个问题。

将图像转换为PNG格式并压缩一下大小后,一切都正常工作了。


2

我尝试了很多方法(这个线程似乎有无数的想法,其中一半是相互冲突的)。对我来说问题在于,当我做像重启设备和Xcode这样的事情时,它会导致图像在应用程序的几个会话中显示,然后停止(我不知道为什么,但这真的很恼人)。

经过无数小时的努力,我发现A.G.在这个线程中的答案是正确的。我做错的唯一一件事是,在xcassets中创建了一个新的图像集,但我仍然在storyboard中的UIImageView中使用了图像的名称,而不是使用图像集的名称。

为了澄清,你需要做的是创建一个新的图像集,并将其命名为“Launch-Defaults”,然后将你的图像添加到其中。然后,在storyboard中的UIImageView中,你使用图像“Launch-Default”(不包括扩展名,因为这是一个图像集)。

当你完成所有这些步骤后,图像应该在你的storyboard中正确地显示。有些人说,如果你不使用扩展名(.jpg或.png),图像将显示为空白,但我认为这是因为他们没有使用图像集的名称。其他人说你需要使用扩展名如.png或.jpg,但关键是要在xcassets中创建图像集,然后在storyboard中使用该图像集。当正确完成时,就不会出现像图像未显示或启动屏幕仅有时工作(需要重新启动)这样的问题了。


2

我的问题。

原因:我将图片拖入Xcode后重命名了。 解决方案:不要在拖入Xcode后重命名图片。这会导致Xcode难以理解。请在拖入/添加到Xcode之前重命名图片。

希望对你有所帮助!


2

在添加图片之前,您必须确保图像文件名以 .png 或 .jpg 结尾,否则它将无法工作。此外,在添加图像之前,您必须确保图像文件在项目的 "Assets.xcassets" 文件夹中。这可以通过简单的拖放完成。同时,请确保在将图像添加到故事板时,左上角的图像名称与实际图像文件名匹配。建议您也查看约束条件。希望这能帮助您。祝您的应用好运。


1
我尝试清理项目,删除png文件和约束都没有起作用。
我只是复制了一张图像并重命名了副本,然后删除了旧图像并添加了新图像(名称相同,已更改),我只是提供了该图像,这对我有用。
另外,我没有使用Assets.xcassets,而是在文件夹中使用图像。

1
在我的情况下,不仅仅是重新启动设备。 我的启动图像存储在其他资源(其他Pods)中。
必须将图像移动到应用程序项目的资源中。 然后重新启动我的设备。(首先检查模拟器,它应该可以工作)。 然后它就可以工作了。
图像可以是png / pdf格式,单个比例或不重要。

1
我在这个问题上花费了数小时,最终才意识到我的错误。当您将图像添加到UIImageView时,它只会使用图像的名称。如果您的图像与故事板不在同一个文件夹中,则它们将显示在xcode中,但在运行应用程序时不会出现。您必须添加适当的文件路径前缀,例如images/image.png。它现在将在xcode中显示为蓝色问号,但在应用程序中将起作用。

1

我遇到了同样的问题。尝试了不同的解决方案,但都没有帮助。后来我意识到只有当我直接将应用程序安装到设备并且应用程序仍然连接到Xcode时,图像才不可见。如果我断开连接,然后打开应用程序,图像就会按预期显示。

这可能是Xcode的错误。


1
我的第一个错误是,我创建了一个普通的.storyboard,重命名并在项目设置中将其定义为启动屏幕。在这种情况下,我遇到了图像问题。似乎在这种情况下缺少一些设置,所以我只需通过文件->新建创建一个新文件,直接选择“启动屏幕”,然后它就可以工作了。
此外,我记得启动屏幕不支持布局约束,出于某种原因。也许最初是这样的,不确定,但现在应该可以使用约束。
也许这对任何人都有帮助。

1

我曾遇到相同的问题,感谢下面提供的参考链接,我已经解决了这个问题。

https://developer.apple.com/forums/thread/19759?answerId=75438022#75438022

虽然在选择图片视图时不需要更改图像名称或删除扩展名,但我仍然创建了一个名为“资源”的文件夹,并将我的图像放在其中。因为我认为直接将图像放在根目录中不太好。

希望这会有所帮助。

祝愉快调试!


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