applicationDidFinishLaunching 未运行

Posted

技术标签:

【中文标题】applicationDidFinishLaunching 未运行【英文标题】:applicationDidFinishLaunching not running 【发布时间】:2011-02-16 16:17:11 【问题描述】:

所以我从 cocoa 和 ObjC 开始。我正在尝试遵循 oreilly 的 up and running objective C/cocoa 书中的示例。我的 applicationDidFinishLaunching 似乎没有被调用。我认为这是我在 IB 中连接所有内容的方式的问题。

标头:http://pastebin.com/6AdQt1uN

班级:http://pastebin.com/VCQWJWkj

IB:http://img265.imageshack.us/img265/4616/screenshot20110216at111.png

有没有人看到我未经训练的眼睛看不到的明显东西?

【问题讨论】:

【参考方案1】:

您的Application 对象是否将其委托设置为您的Application App Delegate 对象?在您的 IB 窗口中右键单击 Application 并将 delegate 出口设置为您的 Application App Delegate 对象。

【讨论】:

做到了。继续进行更多调试:D 谢谢(将在 2 分钟内接受答复)。 刚刚也评论了另一个 - 很高兴它成功了!享受学习 Cocoa :)【参考方案2】:

猜测:您没有将定义 applicationDidFinishLaunching 的对象设置为应用程序的委托。

【讨论】:

我不是按照参考网点部分的图片那样做的吗?我右键单击 Window,然后将委托出口拖到文档视图(在 IB 中)中的类文件中。 那是 Window,而不是 Application。它们是两个不同的对象。请参阅下面的答案 - 您需要在应用程序本身上设置委托。【参考方案3】:

对于那些不使用 IB 的人,请确保您在 main.m 中通过以下方式指定应用委托:

        return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));

代替:

        return UIApplicationMain(argc, argv, nil, nil);

【讨论】:

以上是关于applicationDidFinishLaunching 未运行的主要内容,如果未能解决你的问题,请参考以下文章

无法让辅助 UITableViewController 在 UITabBarController 中显示

Rails 3.2.8 + RestKit - 没有 KVC 的映射

如何将其他视图控制器推送到 NavigationController 但保留 TabBar?