如何在Xcode 9中将文件添加到项目中?

13

我在xcode 9中创建了一个新项目。

我想向项目中添加图像文件。

输入图片描述

输入图片描述

当我从桌面删除这个文件时,

图像文件变红了?

输入图片描述

但在项目文件夹中,我找到了这个图像文件。

输入图片描述

在Xcode 8中它运行得很好,

有什么想法吗?


你重启了Xcode吗? - Anurag Sharma
1
作为一个经验法则,我总是将资源(图片、视频、音频、字体、JSON、ZIP等)添加到蓝色文件夹中,而不是黄色分组中。 - Cœur
5个回答

5

这是一个 Xcode9-beta (9M136h) 的 bug。我不知道它是否已经在 beta3 版本中解决了。 Copy items if needed 会将文件复制到您的项目目录中,但仍链接到原始文件。

我的做法是,在将文件拖到项目中后,从 File Inspector 中选择文件夹图标(请参见下图中的红色圆圈),并指向项目目录中复制的文件。

显示文件检查器的图像,其中包含文件夹图标

@pesch 的方法也有效。首先将图像复制到您的项目文件夹中,然后将其拖到 Xcode 中。


Xcode 9?我现在还在使用Xcode 10.3看到这个。 - Alper

3

Xcode 9允许在Xcode中同步Finder结构中的文件夹。我认为这是一个错误,因为Xcode 9仍处于测试版,您正在“打勾”复制项目。

尝试自己将图像移动到项目文件夹中,然后从那里拖到Xcode中。

这就是您可以留下“如果需要,则复制项目”框未被选中的方法,因为您要自己完成它。


你在Xcode 9中找到了取消同步项目导航器和Finder目录的选项吗? - ocwang

2

看起来这是XCode 9的一个bug。如果你在Identity and Type选项卡中检查图像文件的完整路径,它会显示已删除文件的位置,因此呈现为已删除(红色)。

您可以删除该引用,并使用“添加文件到...”选项将(已)复制的图像的引用从源文件夹添加进去。


我也不行。我使用Beta 3,首先将所有文件(不是图像,而是swift文件)复制到我的项目目录树中。我尝试了从Finder拖动和使用Add File To两种方法。它会做同样的错误操作:将文件移动到项目目录并在项目树上以红色绘制。当我手动移回文件时,它们在XCode中再次变为黑色,但编译器无法看到这些文件中声明的某些类。这是我在XCode中见过的最糟糕的错误。不,我不会向苹果报告它。这是耗时且无用的。 - nbloqs

2
虽然这与资源(图片等)无关。但我目前在 Xcode 9.0 GM 版本中遇到的问题是,将项目项添加到项目中并没有真正将它们添加到我的目标中,尽管我已经选择了它们。
步骤1 - 将文件添加到项目中
添加新文件并选择您的目标。

enter image description here

第二步 - 在文件检查器中查看文件
您可以清楚地在文件检查器中看到它没有相应地添加到这些目标中。

enter image description here

步骤3 - [修复] 将新添加的文件添加到目标中
要修复此问题,只需检查应将文件添加到的目标即可。这样就可以解决问题 :)

enter image description here


2
真烦人,我甚至在最终版本上也遇到了这个问题。 - iTarek
2
整个Xcode 9添加文件和配置都很混乱,这对于苹果来说并不好。 - AntonTheDev

1
我在Xcode 9.0 GM(版本号为9A235,与当前版本相同)中遇到了这个问题。它是间歇性的;有时“如果需要则复制项目”会被执行,有时则不会。
其中一种情况似乎是由源代码控制的存在触发的。我正在按照一个在线教程进行操作,提供的项目没有源代码控制。在此添加文件会遵循“复制项目”复选框,但如果我先将提供的项目设置为git仓库,则每次添加文件都会忽略复选框。

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