1

我的 macOS 应用程序上有一个工具栏,是用 Swift 开发的。toolbarItem 可以拖到 NSWindowController 上,我可以设置一个 IABAction 函数,我现在在函数中有一个打印。当我点击按钮时没有任何反应,点击似乎没有被识别为一个动作?

我在函数中有几行代码,但删除了它,现在只有 print("test") 行。

@IBAction func exportCsvClicked(_ sender: NSToolbarItem) {   
print("test") }

没有观察到输出,所以当我单击此按钮时,我希望在控制台中获得“测试”。

这是与工具栏项关联的连接列表。

4

1 回答 1

0

我找到了一种方法来解决来自 NSToolbarItem 的 IBAction 无法识别对该项目的点击这一事实:

1/我做了一个从项目到主窗口控制器的customSegue(它可以去任何地方)

2/prepare for segue 功能向通知发布通知,说明该项目已被单击。

3/主视图控制器观察通知并呈现,有一个弹出窗口或一个工作表(我有两个按钮),我在情节提要中设置的视图(引用情节提要)。我发现您需要传递所有必要的变量以从主视图控制器设置视图,并且工作表/弹出视图的 viewDidLoad 函数中存在代码问题未运行,我怀疑它们可能不同实例。

于 2018-12-26T22:20:25.450 回答