50 Stimmen

Unterverzeichnisse innerhalb einer iOS-Anwendung

Gibt es eine Möglichkeit, Verzeichnisse innerhalb einer .app ?

Wenn ich zur Zeit eine Datei in Xcode Unabhängig davon, in welcher Gruppenhierarchie sie sich befindet, landet die Datei immer in einem flachen Dateisystem innerhalb meines Anwendungsbündels.

0 Stimmen

Ich glaube, dies gilt auch für OS X-Anwendungen.

1 Stimmen

Zu Ihrer Information: Die Gruppenhierarchie in Xcode ist nur vorgetäuscht. Nur eine Bequemlichkeit für die Gruppierung von Dateien Xcode Auflistungen. Es werden keine Ordner/Verzeichnisse dargestellt oder erstellt.

94voto

Jason Harris Punkte 2317

Wenn Sie nur vorhandene Dateien in den Ressourcen-Ordner Ihres Programmbündels kopieren möchten (auf dem iPhone ist das nur das Innere des .app-Bündels), gehen Sie wie folgt vor:

  • Ziehen Sie den Ordner, den Sie kopieren möchten, in die Liste "Dateien und Ordner" Ihres xcode-Projekts.
  • Ändern Sie auf der Seite, auf der Sie gefragt werden, ob Sie die Dateien zu einem Ziel hinzufügen möchten, die Optionsschaltfläche auf "Create folder references for any added folders".

Der Ordner, den Sie hineingezogen haben, und sein gesamter Inhalt werden beim Erstellen wortwörtlich kopiert.

0 Stimmen

Das funktioniert perfekt! Ich erhalte eine Hierarchie von blauen Ordnern in meiner Projekthierarchie und die Ordner werden zu meinen Copy Bundle Resources hinzugefügt. Beim ersten Versuch habe ich den Punkt "Ordnerverweise für alle hinzugefügten Ordner erstellen" übersehen, aber nachdem ich die Anweisungen noch einmal gelesen habe (dumme Legasthenie), funktioniert es wie am Schnürchen.

0 Stimmen

Übrigens sollten Sie für diese Antwort werben, die meiner Meinung nach hilfreicher ist als Jasons.

1 Stimmen

Ich habe die Antwort auf diese Frage wieder akzeptiert, da sie viel einfacher (und offensichtlicher) zu machen ist.

17voto

Jason Coco Punkte 77369

Unter dem Ziel für Ihre Anwendung müssen Sie eine Phase Dateien kopieren hinzufügen. Dann können Sie ein Unterverzeichnis innerhalb des Anwendungspakets angeben, in das die Datei kopiert werden soll. Es gibt eine Reihe von Standardverzeichnissen für bestimmte Dinge (wie Ressourcen, Frameworks usw.), aber Sie können jedes beliebige Verzeichnis wählen. Wenn Ihr Anwendungsbündel erstellt wird, werden die von Ihnen angegebenen Dateien an den Speicherort innerhalb Ihres Bündels kopiert.

1 Stimmen

Nebenbei bemerkt - von den standardmäßigen Stammverzeichnissen, in denen Dateien abgelegt werden können, möchten Sie wahrscheinlich "ausführbar" wählen, damit Ihr Unterverzeichnis im Stammverzeichnis Ihres Anwendungspakets landet - dann können Sie nach diesem Unterverzeichnis dort suchen, wo Sie normalerweise nach anderen Dateien suchen würden, und dann die benötigte Datei darin finden.

0 Stimmen

Das verstehe ich nicht. Bedeutet dies, dass ich das bestehende Copy Bundle ersetzen muss? (Wozu?) Wie kann ich steuern, welche Dateien zu welchem Kopierpaket gehören, oder kann ich nur eines haben (und zwar in einem Unterverzeichnis)? Ist es nicht möglich, ein Copy Bundle zu erstellen, das eine Dateihierarchie synchronisiert?

1 Stimmen

Ja, Sie können die Hierarchie einer Reihe von Dateien beibehalten; kopieren Sie sie in Ihr Projekt und fügen Sie sie als Ordnerverweis und nicht als Gruppe. Referenzierte Ordner werden einem App-Bundle mit intakter Struktur hinzugefügt.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X