Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Cocoa 单击按钮时未调用iAction_Cocoa_Macos_Interface Builder - Fatal编程技术网

Cocoa 单击按钮时未调用iAction

Cocoa 单击按钮时未调用iAction,cocoa,macos,interface-builder,Cocoa,Macos,Interface Builder,好的,我正在为MacOSX用Xcode(版本3)编写一个应用程序,我的IBactions有问题。我编写它们,并将它们连接到我的按钮,但由于某些原因,当我单击按钮时,它们从未被调用。我在Interface builder中反复检查了连接,但没有成功。如果您对此无能为力,那么可能有人知道如何手动将操作连接到代码中的按钮?我发现了,但这是针对iphone的,它所暗示的似乎不是MacOSX中的cocoa,而是cocoa touch(虽然不确定)。如果有人能帮忙,我将不胜感激 更新:我可以确认这个问题只存

好的,我正在为MacOSX用Xcode(版本3)编写一个应用程序,我的IBactions有问题。我编写它们,并将它们连接到我的按钮,但由于某些原因,当我单击按钮时,它们从未被调用。我在Interface builder中反复检查了连接,但没有成功。如果您对此无能为力,那么可能有人知道如何手动将操作连接到代码中的按钮?我发现了,但这是针对iphone的,它所暗示的似乎不是MacOSX中的cocoa,而是cocoa touch(虽然不确定)。如果有人能帮忙,我将不胜感激


更新:我可以确认这个问题只存在于一个项目中。新项目运行良好。

您是否尝试过从模拟器/设备卸载应用程序,并重新构建和运行?我也遇到了同样的问题,这就解决了我的问题。

我遇到了同样的问题,希望这篇文章能给出答案。经过更多的测试,它似乎与IBAction的签名有关

此签名无效:


-(i)我的行动;

这个签名确实有效:


-(iAction)myAction:(id)发送方;


添加
sender
参数似乎可以解决问题。

如何检查它们是否未被调用?您可以创建一个显示问题的最小案例,还是仅仅是三个随机按钮?它们没有被调用,因为我在方法中放置了一个NSLog,并且没有任何日志消息。我想如果我做了一个新项目,这个问题就会解决,但如果我不必经历麻烦的话,我会喜欢的。所以,换句话说,我认为这只是这个项目。也许你正在编辑的XIB文件与正在运行的文件不同。尝试添加一个额外的按钮,然后构建并运行,看看按钮是否在那里。如果不是,请检查您的XIB文件是否是应用程序目标的成员。无骰子。我添加了一个按钮,当我构建它时它就在那里。这感觉更像是Xcode或IB中的一个bug,我通过将按钮的代码添加到另一个iAction中,成功地破解了按钮。我不认为这是一个答案,但只是告诉你,我至少有它现在工作。除了它是一个MAC应用程序,所以没有模拟器。没关系,我已经重新开始了整个项目。对于未来的谷歌用户来说,我想我应该补充一点,我的IBActions没有被调用是一个问题。这是因为我的整个视图控制器为零,因为在将其传递到
窗口后,我没有将其存储在属性中。beginSheet
。我确实可以确认@AugustLilleaas上面的建议也为我解决了这个问题!谢谢谢谢@August Lilleaas。。这就是我的解决方案!