Ios 应用程序代理在我们的Cocoa/Cocoa touch应用程序中的注册位置
每个应用程序都有一个应用程序委托Ios 应用程序代理在我们的Cocoa/Cocoa touch应用程序中的注册位置,ios,cocoa-touch,cocoa,Ios,Cocoa Touch,Cocoa,每个应用程序都有一个应用程序委托 在我们指定/注册的代码中,其中“SomeClass”(UIApplicationLegate的子类)是我的应用程序的委托?这就是我如何找到我的应用程序的应用程序委托 MyAppDelegate *appDelegate = (MyAppDelegate *)[[UIApplication sharedApplication] delegate]; 应用程序委托的类名只是应用程序的名称,后跟“AppDelegate”。您将在项目的文件列表中看到该类,但它是自动创
在我们指定/注册的代码中,其中“SomeClass”(UIApplicationLegate的子类)是我的应用程序的委托?这就是我如何找到我的应用程序的应用程序委托
MyAppDelegate *appDelegate = (MyAppDelegate *)[[UIApplication sharedApplication] delegate];
应用程序委托的类名只是应用程序的名称,后跟“AppDelegate”。您将在项目的文件列表中看到该类,但它是自动创建的。只需查找文件“MyAppDelegate.m”
此类在“窗口化”应用程序的MainWinodw.xib中分配了代理职责。如果您没有使用窗口应用程序,您可能会在调用“main.m”文件中的
UIApplicationMain
中找到分配。如果您使用故事板,这是在main.m中完成的,行为:
UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
如果UIApplicationMain()
的第四个参数不是nil
,则函数将创建指定类的实例,并将其指定为UIApplication
对象的委托
如果不使用故事板,则会在
main window.xib
中建立连接,其中创建了应用程序委托对象,并将其作为文件所有者的委托进行连接(这是UIApplication
实例,反过来由UIApplicationMain()
函数创建).我们在哪里指定MyAppDelegate
是我们应用程序的主要委托人对不起,我已经在上面澄清了这一点。但是我看到Ole在我编辑的时候说了同样的话!无论如何,希望您找到所需的信息。它不是uiapplicationelegate
的子类。它是一个符合uiapplicationelegate
协议的类。此外,吹毛求疵的是,它不是一个委托类,而是该类的一个实例。无论您是否使用故事板,它都是通过UIApplicationMain
完成的。我不确定更改是什么时候发生的,但从Xcode 4.2.1开始,没有一个Cocoa Touch模板使用主nib。