Warum enthält mein Xcode-Projekt einige blaue Ordner?

79

Wenn ich mein Projekt aus Github importiere, habe ich zwei Ordner, die in Xcode mit einer blauen Farbe angezeigt werden, aber alle anderen Ordner sind gelb. Was ist los?

Samir
quelle
3
Dies bedeutet, dass Sie die Ordner als Ordnerreferenzen und nicht als Dateigruppen eingegeben haben. Ordnerreferenzen werden genauso behandelt wie eine Ressourcendatei (dh als einzelne Entität). Dateigruppen werden zum Anordnen von Code / Elementen in der IDE verwendet.
Jonathan Grynspan
11
Ich weiß nicht, warum diese Frage abgelehnt wird. Wenn es nützlich ist.
Zach Latta

Antworten:

62

Blau wird verwendet, um eine "Ordnerreferenz" darzustellen.

Eine klare Beschreibung dessen, was diese sind und wann sie verwendet werden sollen, finden Sie unter http://struct.ca/2010/xcode-folder-references/.

In Xcode gibt es zwei Arten von Ordnern: Gruppen und Ordnerreferenzen. Sie können Gruppen verwenden, um Dateien in Ihrem Projekt zu organisieren, ohne deren Struktur im tatsächlichen Dateisystem zu beeinflussen. Dies ist ideal für Code, da Sie nur mit Ihrem Code in Xcode arbeiten werden. Andererseits sind Gruppen für Ressourcendateien nicht sehr gut.

Bei einem einigermaßen komplizierten Projekt haben Sie normalerweise mit Dutzenden - wenn nicht Hunderten - von Asset-Dateien zu tun, und diese Assets müssen von Ihnen oder einem Designer von außerhalb von Xcode geändert und bearbeitet werden. Das Ablegen aller Ressourcendateien in einem flachen Ordner ist ein Rezept für eine Katastrophe. Hier kommen Ordnerreferenzen ins Spiel. Mit ihnen können Sie Ihre Dateien in Ordnern auf Ihrem Dateisystem organisieren und dieselbe Ordnerstruktur in Xcode beibehalten.

rcourtna
quelle
31
Die Antwort ist nicht genau richtig. Sie können weiterhin gelbe Ordner haben, die realen Verzeichnissen im Dateisystem Ihres XCode-Projekts zugeordnet sind . Der Unterschied zu Blue-Ordnern besteht darin, dass sie auch realen Ordnern im bereitgestellten Bundle der App zugeordnet sind. Der in dieser Antwort beschriebene Anwendungsfall für blaue Ordner gilt daher auch für gelbe Ordner. Der eigentliche Anwendungsfall für blaue Ordner besteht darin, dass Ihre App auch Assets trennen muss (z. B. wenn Ressourcen mit demselben Namen, aber unterschiedlichen Dateipfaden vorhanden sind). Siehe stackoverflow.com/questions/10380842/…
Rhabarber
1
Mit Xcode 9 wurde eine neue Funktion eingeführt, mit der eine Project Navigator-Gruppe jetzt ausdrücklich einem Dateisystemverzeichnis zugeordnet werden kann . Verwandte: "Was bedeutet das dunkle Dreieck auf den Ordnersymbolen in Xcode 9?"
l
@Rhubarb dieser Kommentar wäre hilfreich als Antwort auf diese Frage.
pkamb