2009-01-06 6 views
49

Gibt es eine Möglichkeit, Verzeichnisse in einem .app zu haben?Unterverzeichnisse in einer iOS-Anwendung

Im Moment, wenn ich eine Datei in Xcode hinzufügen, unabhängig davon, welche Gruppenhierarchie es ist, landet die Datei immer in einem flachen Dateisystem innerhalb meiner Anwendung Bundle.

+0

ich glaube, das gilt auch für OS X auch zu Anwendungen. –

+1

FYI, ist die Gruppenhierarchie in Xcode vorgeben. Nur eine Bequemlichkeit für Dateien Gruppierung Xcode Angebote. Hat/ –

Antwort

92

Wenn Sie nur Ordner vorhandenen Dateien in Ihre Anwendung Bundle Ressourcen kopieren möchten (was auf dem iPhone ist nur das Innere des .app Bündel), gehen Sie wie folgt vor:

  • Ziehen Sie den Ordner, den Sie kopiert werden sollen Die Datei- und Ordnerliste Ihres xcode-Projekts.
  • Aus dem Blatt, das Sie fragen erscheint, wenn Sie die Dateien in ein Ziel hinzufügen möchten, auf die Schaltfläche Radio ändern „, um die Ordnerverweise für alle hinzugefügten Ordner erstellen.

Der Ordner, den Sie in geschleppt und alle keine Ordner repräsentieren oder erstellen seines Inhalts wird wörtlich beim Bau kopiert werden.

+0

Das funktioniert Präfekt! Ich bekomme eine Hierarchie von blauen Ordnern in meiner Projekthierarchie und die Ordner werden zu meinen Kopierbündelressourcen hinzugefügt. Zuerst habe ich verpasste "Create Ordnerreferenzen für alle hinzugefügten Ordner", aber nach erneutem Besuch der Anweisungen (dumme Legasthenie), es funktioniert wie ein Charme. –

+0

Übrigens sollten Sie diese Antwort fördern, die meiner Meinung nach hilfreicher ist als Jasons. –

+1

Ich habe die Antwort wieder akzeptiert, da es viel einfacher (und offensichtlich) ist. –

17

Unter dem Ziel für Ihre Anwendung müssen Sie eine Phase zum Kopieren von Dateien hinzufügen. Dann können Sie ein Unterverzeichnis innerhalb des App-Bundles angeben, in das die Datei kopiert werden soll. Es gibt eine Reihe von Standardverzeichnissen für bestimmte Dinge (wie Ressourcen und Frameworks und so weiter), aber Sie können ein beliebiges Verzeichnis auswählen. Wenn Ihr Anwendungspaket erstellt wird, werden die von Ihnen angegebenen Dateien an den Speicherort in Ihrem Bundle kopiert.

+1

Randnotiz - der Standard-Root-Orte, um Dateien zu stellen, möchten Sie wahrscheinlich "ausführbare" wählen, so dass Ihr Unterverzeichnis in th endet Der root Ihres Anwendungspakets - dann können Sie nach dem Unterverzeichnis suchen, in dem Sie normalerweise nach anderen Dateien suchen und dann die Datei finden, die Sie benötigen. –

+0

Ich verstehe es nicht. Bedeutet das, das bestehende Kopierpaket zu ersetzen? (Was ist der Punkt) Wie kontrolliere ich, welche Dateien zu welchem ​​Paket gehört, oder kann ich nur auf (und tatsächlich auf Unterverzeichnis) haben? Ist es nicht möglich, ein Kopierpaket zu erstellen, das eine Dateihierarchie synchronisiert? –

+1

Ja, Sie können die Hierarchie einer Reihe von Dateien beibehalten; Kopieren Sie sie in Ihr Projekt und fügen Sie sie als ** Ordnerreferenz ** und nicht als Gruppe hinzu. Referenzierte Ordner werden zu einem App-Bundle mit intakten Strukturen hinzugefügt. – Dalbergia