未调用 applicationDidFinishLaunching,使用情节提要和 swift3
Posted
技术标签:
【中文标题】未调用 applicationDidFinishLaunching,使用情节提要和 swift3【英文标题】:applicationDidFinishLaunching not called, using storyboards and swift3 【发布时间】:2017-02-26 18:23:55 【问题描述】:当我运行我的应用程序时,applicationDidFinishLaunching
没有被调用。
这是我AppDelegate
类的代码:
@NSApplicationMain
class AppDelegate: NSObject, NSApplicationDelegate
let statusItem = NSStatusBar.system().statusItem(withLength: NSSquareStatusItemLength)
func applicationDidFinishLaunching(_ aNotification: Notification)
// Insert code here to initialize your application
func applicationWillTerminate(_ aNotification: Notification)
// Insert code here to tear down your application
我正在为我的应用使用 Swift 3 和 storyboards。
applicationDidFinishLaunching - not triggering 的答案建议将AppDelegate.swift
连接到情节提要中的应用程序对象。我那里没有任何应用程序对象。
我的应用没有主菜单,它是 agent,因为我正在尝试构建类似于 Spotlight 的东西。
我应该怎么做才能让applicationDidFinishLaunching
运行?
【问题讨论】:
【参考方案1】:即使您的应用程序作为代理运行,您的故事板也应该具有以下结构:
如果没有,则将一个蓝色立方体(对象)拖入应用场景,将对象的类设置为AppDelegate
,然后从Application
按住control 拖动到App Delegate
,然后选择delegate
。
如果您甚至没有应用程序场景,请创建一个启用故事板的新项目,删除您当前的 Main.storyboard 文件并将新创建的项目的 Main.storyboard 拖到您当前的项目中。
【讨论】:
谢谢!我真的很怀念应用场景。 如何在没有情节提要的情况下以编程方式制作它? @fnc12 你必须在main
中设置代理,就在run
ning 应用程序之前以上是关于未调用 applicationDidFinishLaunching,使用情节提要和 swift3的主要内容,如果未能解决你的问题,请参考以下文章
在 Apple Watch 上接收来自 iCloud 的推送通知
未完全加载单元格时未调用 didSelectItemAtIndexPath
numberOfRowsInSection 已调用但 cellForRowAt 未调用