如何解决图像未显示在模拟器或 iPhone for Xcode 中的问题

Posted

技术标签:

【中文标题】如何解决图像未显示在模拟器或 iPhone for Xcode 中的问题【英文标题】:How to fix an issue with UIImages not showing up in simulator or iPhone for Xcode 【发布时间】:2019-10-07 07:50:08 【问题描述】:

在使用 Xcode 时,我的图像没有显示在模拟器或 iPhone 中时遇到问题。 UIImage 将显示在 main.storyboard 中,但是当我在模拟器或 iPhone 上运行应用程序时,除了UIImage 之外,所有内容都会显示。

让这令人沮丧的是,根据我做过的教程,我能够使同一个应用程序正常工作,但我自己的却不能工作。

当我遇到这个问题时,我决定先关闭 Xcode,然后再次打开项目,但没有奏效。然后我决定,因为从头开始并重新制作应用程序并不是一个非常困难的项目。这导致了同样的问题,应用启动并运行,但没有显示 UIImage。

然后我认为问题可能在于我拥有的图像数量。我制作的原始教程应用程序只有五个图像,并且在模拟器和 iPhone 上都运行良好。我的版本最初有 26 张图片,但我想只是为了完成这项工作,我将其缩小到 5 张。不走运,仍然无法正常工作。

@IBOutlet weak var imageView: UIImageView!

我不确定这是否与应用程序未显示 UIImages 的原因有关,但这与我拉入 main.storyboard 的 UIImage 相关联。

func newBallImage() 

  randomBallNumber = Int.random(in: 0 ... 4)

  imageView.image = UIImage(named: ballArray[randomBallNumber])


我还认为它可能与我的功能有关,但我摸不着头脑,因为这与我为教程应用程序编写的代码完全相同,而且运行良好。

编辑:

我还添加了这些图片,以表明我制作的教程应用程序在模拟器中运行时显示了我的 UIImage,但无论出于何种原因,它都没有出现在我的版本中。前两张图片是我制作的教程应用,后两张是我正在开发的自己的版本。

The Tutorial I followed and typed up The Tutorial I followed and typed up

My version that I made using the same tutorial It's not showing up when running the simulator or on my phone

【问题讨论】:

你在哪里打电话newBallImage 嗨,我还是新手,所以我可能会弄错,但我编写了这个函数来将 UIImage 更改为随机图像。我也输入的教程一中的功能没有给我带来任何麻烦。 本教程还有哪些其他代码(您可能没有)?应该有一行看起来像newBallImage() 您好,我继续在屏幕截图中发布了我制作的教程应用程序和我自己的版本的整个代码。我正在寻找一条看起来像 newBallImage() 的线,它在那里用于我的按钮、我的摇晃动作和我的 super.viewDidLoad。 【参考方案1】:

如果图像出现在情节提要中,则表明它存在于您的捆绑包中,并且您可以正确访问它。

这些图像的名称可能不是您所期望的。它必须是完全匹配的。

在情节提要中选择图像视图并检查属性检查器 - 图像名称是什么?

你的“千禧一代”8 球形象叫什么?它在资产目录中显示什么?这些图像名称必须与您的 ballArray 中的名称匹配。

在这一行添加断点:

imageView.image = UIImage(named: ballArray[randomBallNumber])

如果代码暂停,很好,您的函数正在被调用!现在你需要弄清楚哪里出了问题。当代码暂停时,在调试器中输入:

po UIImage(named: ballArray[randomBallNumber])

如果这表示 nil,那么您的图像名称与数组中的名称不匹配。

【讨论】:

YOO,你这个男人!我回到属性检查员那里,找出了问题所在!在我的版本中,我将所有图像 Ball1 命名为大写 B,这与代码不匹配!回去把b改成B,瞧!现在图像正在显示。我没想到,为了将来的参考,我会记住命名是区分大小写的!

以上是关于如何解决图像未显示在模拟器或 iPhone for Xcode 中的问题的主要内容,如果未能解决你的问题,请参考以下文章

图像未显示在 iPhone 启动屏幕中

测试期间 iPhone 5 设备上未显示应用程序图标

如何使用objective C在iphone模拟器中显示图像

使用 Xcode 10 在 Watch Simulator 中未显示资产目录图像?

iPhone模拟器显示尺寸错误的图像

我如何将图像下载到 iphone 模拟器中的文档文件中并通过它在 UIImageView 中的路径再次显示它?