applicationDidFinishLaunching未被调用

Lau*_*llo 30 macos xcode cocoa interface-builder

在我的appdelegate.m中,不调用applicationDidFinishLaunching.我已经读过这是因为我的"应用程序"的委托没有正确连接,但我不知道如何连接它.我所做的是右键单击XIB文件中的Application,然后将委托出口拖到某个地方......但不知道在哪里.任何帮助赞赏.谢谢 !

Jos*_*zzi 48

在MainMenu.xib中,确保有一个AppDelegate类的实例.要创建一个,将一个普通对象(蓝色立方体)拖到列表中,并将其类名设置为AppDelegate(或者您的app delegate类名称).

同样在MainMenu.xib中,要连接它,请将连接从Application对象拖到AppDelegate实例(蓝色立方体)并将其连接到委托插座.

完成.

  • 你救了我很多时间,谢谢!除此之外,我必须将其链接到文件所有者. (5认同)
  • 在Xcode 6中(之前没有测试过),似乎只需要链接文件所有者,而不是Application对象. (3认同)
  • 文件的所有者确实是MainMenu.nib文件中的应用程序. (3认同)
  • 当人们以这种方式写指令时,这很好. (2认同)

Cha*_*ism 5

如果你已经更新到Swift 3,可以试试这里:

看看你的"AppDelegate.swift"并确保相关的行看起来像这样:

func applicationDidFinishLaunching(_ aNotification: Notification) {
Run Code Online (Sandbox Code Playgroud)

与此相反:

func applicationDidFinishLaunching(_ aNotification: NSNotification) {
Run Code Online (Sandbox Code Playgroud)

我刚刚更新了一个应用程序,并没有考虑检查.结果是我的应用程序已启动,但相关方法从未被调用过.显然,您应该检查具有Notification对象的其他函数.