xcode 4.x.x Project Navigator - 使用真实文件夹

时间:2012-06-04 18:23:36

标签: xcode directory project-navigator

有没有办法让xcode在Project Navigator中使用真正的文件夹层次结构? 我发现这些伪文件夹有点烦人,因为它们没有反映磁盘上的项目。 或者至少让xcode-made-folders与真实文件夹的颜色不同?

感谢。

2 个答案:

答案 0 :(得分:1)

并非如此,尽管 的颜色不同。

您有组(黄色) - 可以引用目录,但不会自动更新以反映磁盘上的内容。组也可以表示与目录或其内容结构无关的组。

您还有一个参考(蓝色)。这会自动更新,但其内容不是第一类项目项。

就个人而言,我只是构建项目,以便可以轻松地(重新)从磁盘表示(例如删除文件夹)或在另一个IDE中构建它们。很多时候,在Xcode中定义可以(不必要)定义的细节会移到xcodeproject之外。在计算出如何构建程序/源/目标之后,同步项目导航器中的表示就像拖放一样简单。

编辑:我指的是Project Navigator。您所称的“项目组织者”是指项目导航器还是组织者的某些部分,我不确定。

答案 1 :(得分:1)

使文件夹结构模仿Project Navigator组结构:

对于此过程,与往常一样,在执行此操作之前备份整个项目文件夹(Finder中的压缩存档功能很好)。

你想要的东西很容易设置为添加到项目或由项目创建的新文件,但如果你想要的组中有很多文件,但是你想要的磁盘文件夹中没有,那么它可能会很麻烦

如果您在Project Navigator中添加一个组,请将注意力转移到“实用工具”窗格> File Inspector>身份。关键领域是处理路径。弹出窗口将为您提供指向组文件默认位置的各种相对路径,而Full Path将始终为您提供相应的路径。在一个新项目中,您会发现创建的所有组都分配了相同的位置。

现在关键是弹出窗口下方的小窗口图标按钮(右侧)。如果单击该按钮,则可以为该组中的文件选择(文件夹)位置。如果您已经拥有该组中的文件,他们将移动到新位置,而是在Project Navigator中变为红色,因为磁盘上的文件不在新分配的路径中,但是将它们移动到您刚刚为该组设置的文件夹中应该会重新安装。

(提示:小箭头按钮是"在Finder中显示的快捷方式")

现在,当您选择"新文件...",选择所需的文件类型(下一步)后,然后配置适用于该类型的任何设置(下一步),你&#39 ;重新提供一张表,询问新文件的放置位置。如果在开始此过程之前在Project Navigator中选择了该组,则它已被选为" Group"中的项目。工作表底部的弹出窗口,将在文件浏览器中选择与该组关联的文件夹。如果您决定将它放在不同的组中(我一直这样做,因为在我达到这一点之前我没有在Project Navigator中选择了正确的组),只需在底部的组弹出窗口中更改它并且文件浏览器将更改为与您刚刚选择的组关联的文件夹。

如果您稍后在Project Navigator中创建组的子组,它将默认为父组的路径。如果在设置父组的路径时已存在子组,则任何现有子组的路径将与父组一起移动。

避免重复文件:如果要将现有文件移动到另一个组(已经分配了路径)并将文件移动到磁盘上的组文件夹中,您可以选择此时。您可以继续从Project Navigator中删除它们,确保只删除对它们的引用并继续下一步,或者作为一个选项,您可以实际将它们在Project Navigator中移动到您想要它们的组中(这不会更改文件的磁盘位置 - 与该组关联的文件夹仅适用于该组的新文件),并将其用作仍需要从Finder中拖入的内容的指南。如果您要移动大量现有文件,这可以派上用场,就像您稍后会看到的那样。

现在,在Finder中,手动将一些文件移动到它们应该结束的文件夹中(与新组关联的文件夹)。如果你在Project Navigator中移动它们(而不是删除它们),它们将变为红色,因为实际文件不在它们所在的位置,但这可以作为指南(特别是如果你要移动大量文件)仍然需要正确设置。

现在,您可以将它们从Finder拖放到与放置文件的文件夹关联的组中。在出现的对话框中,如果选中复选框是否复制(如果需要),则无关紧要,因为它们已经到位,但确保您有"添加非常重要目标"复选框已选中。

如果您从旧组删除了文件(仅删除参考),您可以进入Finder中的旧组文件夹并将文件从那里拖到Project Navigator中的新组中,您需要进行确保选中“必要时复制”,但这是最终在磁盘上存在重复文件的位置...在旧组的文件夹和新组的文件夹中。这就是为什么要先将它们移动到Finder中的新位置,然后再将它们拖到Project Navigator中的新组中。

如果您将Project Navigator中的红色文件保留在正确的组中,则在将相同的文件添加到组中后(由于他们已经在正确的位置而不必复制到组),您将最终得到对文件的新(黑色)引用以及对相同文件的红色破坏引用。此时,您可以从组中删除红色文件,而不会询问您是要删除文件还是仅删除引用。将红色文件保留在新组中,直到在Project Navigator中显示正确的(黑色)文件,这有助于确保将所有文件重新导入Project Navigator。

如果您只是在几个/几个文件周围移动,那么一旦您将项目导航器和Finder中的文件移动到正确的位置,您可以在Project Navigator中选择每个红色参考并选择该特定文件的路径(与将文件夹分配给组的方式相同)。但是,如果你要移动一堆文件,这可能需要很长时间(你一次只能分配一个),所以最好从Finder中删除它们。

还有一个需要注意的事情......最好不要将所有内容都放在"支持文件" group,以及MainMenu.xib,因为根据Build Settings,这些都应该在特定的位置。

请记住:始终确保首先备份(如果您正在改变大量文件,事情可能会失控)...只是拥有快照可能会赢得帮助,因为恢复到快照不会将您的文件移动到原来的位置。