Cocoa app without a MainMenu.xib
For iOS (Cocoa Touch), it's possible to go to your main.m and rep开发者_高级运维lace the fourth argument in UIApplicationMain(int argc, char *argv[], nil, nil)
with the class name of your app's delegate, which would then construct the views as needed. However, Cocoa (Mac) projects have the following in main.m:
return NSApplicationMain(argc, (const char **)argv);
So the question is basically: how do you hand over an app's delegate to Cocoa apps without a MainMenu.xib?
You can use setDelegate
method of NSApplication
instance. Here is a sample:
AppDelegate * delegate = [[AppDelegate alloc] init];
[[NSApplication sharedApplication] setDelegate:delegate];
[NSApp run];
As for return value you can use EXIT_SUCCESS
Subclass NSApplication
, declare your subclass's name as the Application Class
(or similar) property in Xcode. In your subclass you may override some function that gets called when the app is initialized, maybe -finishLaunching
?
精彩评论