图像建议在Xcode 10中无法正常工作

15

我正在尝试将图像设置到 UIImageView中。在旧版本中,它可以很好地工作。

在 Xcode 9.4.1 中:

这里输入图片描述

但是在 Xcode 10 中:

这里输入图片描述

当我尝试输入图像名称时,没有显示图像建议。

即使“Image Literal”也无法正常工作,双击上面的图标也没用。

在 Xcode 首选项中是否有任何设置?

如何启用像以前一样的图像建议?


1
可能是Xcode 10 - 图像文字不再可用的重复问题。 - Cœur
我觉得其他问题可能会带来比你更好的答案,这就是为什么我把它链接到那个方向。无论如何,关闭一个问题需要很多选民,所以如果你不同意,你可能是安全的。 - Cœur
此外,由于您的声望不足10k,您无法看到此页面上的版主评论,其中指出:“请勿在多个问题中发布相同的答案。相反,请将答案调整为所提问的问题。如果这些问题完全重复,请投票/标记为关闭。- Samuel Liew♦ Sep 17 at 14:13” - Cœur
4个回答

21

在Xcode 10和Swift 4.2中,仅限于Xcode IDE的代码完成功能(或自动完成)已经停止使用旧方式,这里是新的方式:

只需键入 image literal 就会自动完成默认图标。 双击该图标,它将在右侧打开媒体库。

只需选择您的图像,它就像以前一样工作!

希望我能帮到你!


对我有用,谢谢。 - Verticon
为什么他们要做出这个改变?看起来非常奇怪和不方便。 - Leonard
直到我给编译器提供更多信息,例如 let image: UIImage = image literal,这才对我起作用。 - Norman
imageliteral应该作为一个单词输入,不要有空格,这样自动完成才能正常工作。(使用Xcode 11) - Marcy

9

那么我们如何在没有名称的情况下使用图像呢? - Jay Patel
4
你知道他们为什么删除了这个吗?它会重新启用吗? - Damian Dudycz
我刚刚下载了Xcode 10,但没有运气。似乎它仍然消失了。在发布说明中找不到任何有关其废弃的提及。 - David
7
目前您可以使用“图像文字”选项自动完成(输入图像或文字),按回车键确认后双击从列表中选择图标。虽然不如输入资产名称方便。 - frin

4

Xcode 10 在处理图像字面量方面存在一些实际问题,特别是当您提供的资源名称与这些资源的文件名不对齐时。

以下是我发现可以恢复图像字面量预览的步骤。

通过媒体库选择器添加图像。

Add an image via the media library picker.

如果您的图像有多个分辨率(例如@1x,@2x,@3x),Xcode会将它们全部放入您的代码中,并且抛出一个错误来告诉您已经做了一些淘气的事情。

Consecutive statements error.

如果需要,删除两个有问题的图像预览。这样做可能会导致您只看到默认的图像图标,而不是实际图像的预览。

Default image icons.

将设置图像的行注释掉。您会发现图像文字引用的是资产文件名,而不是您在资产目录中提供的名称。

如果您在将资产添加到资产目录后重命名了它们,则有时似乎会阻止Xcode正确读取资产。

Filenames.

将文件名更改为相应的资源名称。

您可以在资源目录中找到资源名称。

Asset names in catalog.

Asset names in code.

取消代码注释并且,如果默认的图片图标仍然可见,请双击图片图标。然后它应该会显示你实际资产的预览。
您可能还需要清理和重新构建您的项目。

Asset previews.


专业提示:在将资源添加到资源目录之前,请确保它们的名称与您想要的完全相同。 - Ian Rahman

0

使用 command + shift + M 快捷键打开媒体库,然后将所需内容拖放到代码中即可。

或者

add image via code


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