.xib ファイルを含む Xcode テンプレートから開始すると、その .xib ファイルはコンパイル ソース ビルド フェーズにリストされます。ビルド プロセス中に .xib ファイルを .nib ファイルに変換する必要があるため、これは理にかなっていますibtool
。
しかし、.xib ファイルの名前を変更していくつかの新しいファイルを追加すると、.xib ファイルがコンパイル ソース ビルド フェーズにリストされないという状況に陥りました。代わりに、それらはすべて Copy Files ビルド フェーズに一覧表示されます。これを修正できませんでした。(私にそれについて始めさせないでください。)
しかし、私はそれを修正する必要がないことがわかりました!ビルドするときに、ビルドしたアプリのパッケージを調べると、.xib ファイルではなく .nib ファイルが含まれていることがわかります。.xib ファイルは、ファイルのコピー ビルド フェーズであっても、リソース フォルダーにコピーされません。ソースのコンパイル ビルド フェーズでなくても、コンパイルされています。
そして、ビルドログを見ることでこれを確認できます:
CompileXIB "MyApp/en.lproj/ViewController~iphone.xib"
CompileXIB "MyApp/en.lproj/ViewController~ipad.xib"
どうすればいいの?
編集: 今、最初の前提を再現できません! ある回答者が言ったように、テンプレートは.xib ファイルを Compile Sources ビルド フェーズに入れません。それでも、いくつかの .xib ファイルが Compile Sources ビルド フェーズにあり、いくつかの .xib ファイルが Copy ビルド フェーズにあるという状況に陥り、それが私を混乱させました。