1

我正在制作我的第一个 Mac OS X 应用程序,但遇到了一个问题。

我在链接到 NSArrayController 的窗口上创建了一个 NSTableView ,我想在停止编辑文本字段单元格后调用一个方法。所以我选择在结束编辑时调用一个动作,如下图所示:

在此处输入图像描述

之后,我为它创建了一个 IBAction:

它在我的 AppDelegate.h 中生成了这段代码:

- (IBAction)stopEditingHeaderNameCell:(id)sender;

然后我在 AppDelegate.m 中编辑了 IBAction,以便在编辑单元格时显示 NSLog 消息:

- (IBAction)stopEditingHeaderNameCell:(id)sender
{
    NSLog(@"test");
}

但是,当我通过按 Enter 或单击另一个元素来停止编辑单元格时,什么也没有发生。我已经尝试将此 IBAction 应用于 NSTextField 并且它运行良好,但是当应用于此文本字段单元格时它不会调用 IBAction。

谁能帮我解决这个问题?

谢谢!

4

1 回答 1

1

这不是您对表格视图中的文本字段单元格执行此操作的方式。您需要让您的应用委托表的委托(您可以在 IB 中连接它),然后实现 controlTextDidEndEditing:。当您结束编辑(通过跳出单元格或单击另一行或另一列)时,将调用此方法。

于 2012-06-08T00:25:57.317 回答