Objective c NSButtonCell作为NSTableVIew中的复选框显示在';我没有被选中

Objective c NSButtonCell作为NSTableVIew中的复选框显示在';我没有被选中,objective-c,cocoa,nstableview,nsbutton,nsbuttoncell,Objective C,Cocoa,Nstableview,Nsbutton,Nsbuttoncell,我有一个用于多选目的的NSTableVIew,有两列,第一列带有NSButtonCell复选框,另一列作为标题 其思想是检查要添加到数组的后缀项 问题是,当我单击复选框时,它们的状态不会改变。我已尝试附加iAction,但要取消操作的发件人是TableView,而不是复选框 关于如何实现这种功能有什么想法(或链接?假设您使用的是NSTableViewDataSource,您需要实现三种方法: - (void)tableView:(NSTableView *)aTableView setObjec

我有一个用于多选目的的NSTableVIew,有两列,第一列带有NSButtonCell复选框,另一列作为标题

其思想是检查要添加到数组的后缀项

问题是,当我单击复选框时,它们的状态不会改变。我已尝试附加iAction,但要取消操作的发件人是TableView,而不是复选框


关于如何实现这种功能有什么想法(或链接?

假设您使用的是
NSTableViewDataSource
,您需要实现三种方法:

- (void)tableView:(NSTableView *)aTableView setObjectValue:(id)anObject forTableColumn:(NSTableColumn *)aTableColumn row:(NSInteger)rowIndex
- (id)tableView:(NSTableView *)aTableView objectValueForTableColumn:(NSTableColumn *)aTableColumn row:(NSInteger)rowIndex
- (NSInteger)numberOfRowsInTableView:(NSTableView *)aTableView
单击复选框时,将调用第一个方法。如果aTableColumn有您的复选框,您将保存新状态,即
[anObject boolValue]

当表需要绘制一行时,它调用第二个方法。当表列是复选框列时,返回在第一个方法中保存的状态

最后一个方法告诉表视图将有多少行


有关更多详细信息,请参阅,但我已经在这里对其进行了总结。

这里没有什么可供参考的。如何向NSTableView数据提供数据?