【发布时间】:2011-07-04 17:26:22
【问题描述】:
好的,我正在用 Xcode(版本 3)为 Mac OS X 编写一个应用程序,但我的 IBactions 遇到了问题。我编写它们,并将它们连接到我的按钮,但由于某种原因,当我单击按钮时它们永远不会被调用。我已经仔细检查并三次检查了接口生成器中的连接,但没有运气。如果您对此无能为力,那么也许有人知道如何手动将操作连接到代码中的按钮?我找到了Can you hard code IBActions and IBOutlets, rather than drag them manually in Interface Builder?,但那是针对 iphone 的,它所暗示的似乎不在 Mac OS X 可可中,只有可可触感(虽然不确定)。如果有人可以提供帮助,我将不胜感激。
更新:我可以确认这个问题只存在于一个项目中。新项目运行良好。
【问题讨论】:
-
你如何检查他们没有被调用?你能创建一个展示问题的最小案例,还是只是三个随机按钮?
-
它们没有被调用,因为我在方法中放了一个 NSLog,并且没有任何日志消息。我想如果我做一个新项目,问题就会消失,但如果我不必经历这些麻烦,我会喜欢它。所以,换句话说,我认为这只是这个项目。
-
可能您正在编辑的 XIB 文件与正在运行的文件不同。尝试做一些事情,比如添加一个额外的按钮,然后构建并运行,看看按钮是否在那里。如果不是,请检查您的 XIB 文件是否是应用程序目标的成员。
-
没有骰子。我添加了一个按钮,当我构建它时它就在那里。感觉更像是 Xcode 或 IB 中的错误。
-
我设法破解我的按钮来工作,方法是将他们的代码添加到另一个 IBAction,它正在工作。我不认为这是一个答案,只是告诉你我至少现在可以使用它。
标签: cocoa macos interface-builder