我正在尝试从我的启动屏幕中获得一个图像来显示为启动屏幕。故事板文件,但图像从不显示。我有标签显示良好,但图像不出现。

这是启动屏幕在启动屏幕中的外观。故事板文件:

然而,当我在模拟器(以及物理设备)上运行应用程序时,显示如下:

如您所见,标签“Test”显示良好,但图像没有显示。我真的不知道为什么会发生这种情况,我尝试的任何方法似乎都不起作用。如果任何人有任何关于如何解决这个问题的想法,这将是非常感激的。


当前回答

非常令人沮丧。最终成功的解决方案:

是否硬重启设备 删除应用程序 从Xcode安装app

其他回答

我也面临同样的问题。

添加一个新的图像集到XcodeAssets。 将图像添加到映像集中。 添加图像视图,以启动屏幕和设置您的imageset为图像 在Imageview的属性检查器中,取消选中“清除图形上下文” 清理生成文件夹并再次运行。

我在这个问题上花了几个小时才终于意识到我的错误。当你添加一个图像到UIImageView时,它只会使用图像的名字。如果你的图片和你的故事板在不同的文件夹中,它们会在xcode中显示,但在运行应用程序时不会。你必须添加适当的文件路径前缀,例如images/image.png。它现在会在xcode中显示为一个蓝色的问号,但它在应用程序中是有效的。

在我的案例中有两个问题解决了它:

似乎有1MB的图像大小限制;没有文档,但当我优化相同的图像从3MB到1MB以下,它工作。这是有意义的,因为操作系统希望启动屏幕尽可能轻。 操作系统确实积极缓存启动屏幕!为了看到我的启动屏幕变化,我必须每次重置模拟器:Device > Erase所有内容和设置

在我的情况下,重置模拟器的内容和设置解决了这个问题。

这恰好是XCode/iOS中的缓存问题,但有一个简单的修复方法:在Assets中重命名文件。Xcassets,这样缓存就会重新生成。