Search code examples
iphone

How to subclass UIApplication?


The iPhone Reference Libary - UIApplication says I can subclass UIApplication, but if I try this I will get an exception:

*** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'There can only be one UIApplication instance.'

This reminds me of the Highlander "There can be only one,. :-)

Do I have to pass other argurments to UIApplicationMain? Or did I missread somthing in the libary?


Solution

  • Did you pass the name of your subclass to UIApplicationMain? Let's assume you have

    @interface MyUIApp : UIApplication 
    ...
    

    then in main() you should do:

    NSString* appClass = @"MyUIApp";
    NSString* delegateClass = nil;
    int retVal = UIApplicationMain(argc, argv, appClass, delegateClass);