Я разрабатываю на более старом Mac. У меня нет доступа к более новым компьютерам Mac с Xcode 3.1, но я хочу убедиться, что мой исходный код будет работать на них. До сих пор это было довольно просто, все, что мне нужно сделать, это игнорировать все, что рядом с названием «устаревшее», но переход от NIB к XIB меня немного сбил с толку. То, что я прочитал, по-видимому, подразумевает, что XIB компилируются в NIB во время сборки Release, но, возможно, этого не происходит во время сборки Debug.
Что бы это сделало в 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 каждый раз, когда приложение компилируется, точка, и мне не нужно ни о чем беспокоиться?