gpt4 book ai didi

objective-c - viewForTableColumn 未运行(但 objectValueForTableColumn 运行)

转载 作者:太空狗 更新时间:2023-10-30 03:40:04 24 4
gpt4 key购买 nike

在尝试创建基于 View 的表时,它不断调用 objectValueForTableColumn 函数而不是 viewForTableColumn

我已在其设置中将 TableView 设置为“基于 View ”。但我仍然无法让它调用正确的函数。我看过苹果示例 (tableviewplayground) 的实现,在某些时候甚至复制粘贴了 IB 和函数,仍然没有任何进展。

相关代码:

// Should run
- (NSView *)tableView:(NSTableView *)tableView viewForTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row
{
return nil;
}

// Gets run
-(id)tableView:(NSTableView *)tableView objectValueForTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row
{
return nil;
}

两张图片,不确定它们有多大帮助,但仍然如此。 http://imgur.com/a/ix34Q

最佳答案

需要检查的几件事:

  • 您的 NSTableView 是否将其 delegate 设置为实现了 NSTableViewDelegate 协议(protocol)? (我问是因为tableView:viewForTableColumn:row: 是一个委托(delegate)方法,而tableView:objectValueForTableColumn:row: 是一个数据源方法。)

  • 是否有在 IB 中设置的任何绑定(bind)? (你提到你从现有项目中复制了 nib。)主要检查绑定(bind)到 NSTableView 内容绑定(bind)和提供的 View subview (通常是文本字段。)

  • 您是否从NSTableViewDataSource 协议(protocol)并返回一个非零值整数?

最后,您可以查看文档中关于“以编程方式填充基于 View 的 TableView ”的 TableView 编程指南一章。

关于objective-c - viewForTableColumn 未运行(但 objectValueForTableColumn 运行),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12551574/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com