Xcode 中的文件无法正常工作(名称为红色)

Files in Xcode not working (names in red)

我重命名了我的应用程序文件夹以尝试更改应用程序的名称,因为它在项目导航器中不起作用,当我这样做时,所有文件都显示为红色。我已尝试通过将文件重命名回原来的样子来修复它,但它仍然不起作用。

如有任何帮助,我们将不胜感激。

Link 到保管箱:https://www.dropbox.com/s/omvo0saff0z9ncc/TicketekApp%202.zip?dl=0

如果文件标记为红色,则它们是 "not found" by Xcode。

您在 Xcode 之外的文件查找器中移动或删除了它们。 删除 XCode 中红色标记的文件,然后将它们重新添加到 XCode.

这将解决您的问题。

在我的例子中,将项目移动到新文件夹并修复每个文件位置后,项目可以正确编译,但文件名仍为红色。

问题是文件被分组了。该组是文件红色名称的原因。所以我添加了新组,名称与旧组相同(Xcode 允许这样做,因为它不知道旧组是什么),将文件从每个组移动到它的新组并删除旧组.

现在所有的红色名字都没有了。

我是这样解决这个问题的: 单击左侧 Xcode 导航区域(Navigator)中文件名以红色显示的组名。在 Xcode 右侧的 Utility 区域中打开 File Inspector 选项卡。有一个名为 Full Path: 的字段,单击路径最后放置的箭头。您将弹出 window 显示您的项目路径。更改已将文件从 Finder 移动到其中的组文件夹。

此问题的另一个原因可能是您的 project.pbxproj 文件。就我而言,在执行 git 合并后,其中一个 PBXGroup 遗漏了一行代码。将它与其他人进行比较并添加缺失的行后,问题就消失了。

在我的例子中,我有一个 contents.xcworkspacedata 文件,其中包含以下几个文件的绝对路径名(大约 40 个文件中只有 2 个)。当我在另一台机器上签出该项目时,它显示这些文件为“红色”(有道理,新签出的项目位于不同的位置)。我什至不知道几个文件是怎么跑到这里来的。使用绝对路径根本没有任何意义。

为了修复,我只是修改了这个文件以删除这些行,将文件移到 tmp 目录中(因为它们在那里),并在 Xcode.

中添加了丢失的文件
<?xml version="1.0" encoding="UTF-8"?>
 <Workspace
    version = "1.0">
   <FileRef
      location = "group:/Users/jack/projects/myapp/myapp/MyController.swift">
   </FileRef>
   <FileRef
      location = "group:/Users/jack/projects/myapp/myapp/CustomView.swift">
   </FileRef>
...