Objective-C:UIApplicationMain第四个参数
Posted
技术标签:
【中文标题】Objective-C:UIApplicationMain第四个参数【英文标题】:Objective-C: UIApplicationMain fourth parameter 【发布时间】:2011-09-07 03:19:07 【问题描述】:对于 main() 中的 UIApplicationMain 函数,谁能告诉我为第四个参数(委托类名)指定 nil
和指定 NSStringFromClass([AppDelegate class])
之间的区别,正如我在某些代码中看到的那样?
Apple 文档说如果应用程序委托对象位于主 nib 文件中,则指定 nil,那么为什么要使用 NSStringFromClass
函数作为参数?
亲切的问候。
【问题讨论】:
【参考方案1】:正如你所说,当你将 nil 传递给 UIApplicationMain() 的第四个参数时,它将需要MainWindow.xib
。你可以看到这个apple official sample codes,它没有MainWindow.xib
,它在运行时决定了它在iPhone或iPad上的xib布局。
【讨论】:
【参考方案2】:一个可能的区别是,当您不使用 MainWidow.xib 时,您必须将最后一个参数作为字符串。或者我可以说当您以编程方式创建所有视图、控制器和窗口时。因此,最后一个参数会将特定的类注册为应用程序委托。
否则,这是在主窗口 XIB 中完成的。
这还不是全部,但希望它有所帮助....
【讨论】:
以上是关于Objective-C:UIApplicationMain第四个参数的主要内容,如果未能解决你的问题,请参考以下文章
XCTest:[UIApplication sharedApplication] 返回 nil
从后台线程访问 [UIApplication sharedApplication] 可以吗?