私は古いMacで開発しています。私はXcode 3.1を実行している新しいMacにアクセスすることはできませんが、自分のソースコードが確実に動作するようにしたいのです。これまではかなり簡単でした。名前の隣に「廃止予定」というものは何も無視していますが、NIBからXIBへの変更は私にはうまくいきました。私が読んだことは、リリースビルド中にXIBがNIBにコンパイルされることを意味するように思われますが、デバッグビルド中にはそうではないかもしれません。[NSBundle loadNibNamed:owner:]はXcode 3.1でどのように動作しますか?
Xcode 3.1では何が行われますか?
#import <Cocoa/Cocoa.h>
int main(int argc, char *argv[])
{
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
[NSApplication sharedApplication];
[NSBundle loadNibNamed:@"MainMenu" owner: NSApp];
[[NSApp mainMenu] removeItem: [[NSApp mainMenu]itemWithTitle: @"File"]];
[pool release];
[NSApp run];
return NSApplicationMain(argc, (const char **) argv);
}
MainMenu.nibが存在しないため、デバッグに失敗しましたか?または、アプリケーションがコンパイルされるたびに、XIBがNIBに変換され、期間があり、これについて何も心配する必要はありませんか?
他の開発環境と同じように動作します。それはXcode IDEの機能ではなく、ココアの方法です。ココアは、最終的にはオペレーティングシステムの一部なので、どのバージョンのOSをお求めですか? –