すべてのNSLocalizedStringリファレンスを抽出するためにibtoolを実行すると文字列のローカライズが簡単になるため、.mファイルと.hファイルと.xibファイルをすべて1つのフォルダに保存することをお勧めします。プロジェクトをリファクタリングするときにXcode内の仮想フォルダ構造。
サードパーティのライブラリまたはフレームワークを別のフォルダに保存して、独自のコードと混同しないようにします。
Xcode自体では、これらのクラスファイルをViews、Controllers、Model、Nibs(およびサードパーティ製のライブラリのライブラリ)という別々の仮想フォルダに整理します。大規模なプロジェクトの場合は、各コンポーネントのフォルダに分割し、ビュー、コントローラなどに分割しますが、それも物理フォルダではなく仮想フォルダだけです。
リソースを別の物理フォルダに保存することは、ディスク上で簡単に参照できるようにするための良い考えです。これらを画像、音、xmlなどに分割することは意味があります.Xcodeでは、これらをコンポーネントやカテゴリ(インターフェース、コンテンツなど)で仮想サブフォルダに分割したい場合がありますが、プロジェクトが成長するにつれて、フォルダ構造をリファクタリングするのが難しくなります。
誤って2つの画像に同じ名前を付けることを避けるため、すべての画像を同じフォルダに保存することをお勧めします。同じ名前の2つのイメージを別の場所から読み込んだ場合、Xcodeは警告しませんが、アプリケーションをビルドすると、ランダムに選択されたどちらか一方だけで終了します。
Default.pngとIcon.pngをルートに置いておく必要はありません(またはDefault.pngとIcon.pngと呼ぶこともあります)が、標準ファイルが期待通りでないとXcodeが混乱することがあります。
あなたが何をしていても、画像を読み込むときに青のフォルダ参照を使用しないでください。imageNamed:またはInterface Builderでコード内からアクセスできません。代わりに、黄色の仮想フォルダ参照を使用します。基本的に青のフォルダは、アプリケーションのビルド時に実際のフォルダとしてアプリケーションバンドルにコピーされますが、黄色のフォルダは無視され、その内容はアプリケーションバンドルのルートに直接移動します。青色のフォルダのコンテンツにアクセスするには、読み込んだときにパスに青のフォルダ名を含める必要があります。
NSString *path = [[NSBundle mainBundle] pathForResource:@"image" ofType:@"png" inDirectory:@"nameOfBlueFolderInXcode"];
UIImage *image = [UIImage imageWithContentsOfFile:path];
私はそれがあなたがそれを保存しなければならないか、ディレクトリ構造のためのガイドラインやルールには全く依存していると思います。 – rishi
私はそれについて "厳しい"規則がないことを知っています、私は人々がどのように彼らのプロジェクトを構築するのだろうかと思っています:) – allaire
あなたもiphone sdkフォーラムのスレッドを参照することができます - http://www.iphonedevsdk.com /forum/iphone-sdk-development/6457-xcode-folder-directories.html – rishi