对于基于单元格的tableView,“tableView:viewForTableColumn:row:”正在调用而不是“tableView:objectValueForTableColumn:row:”

时间:2015-08-05 07:15:17

标签: objective-c delegates nstableview

我在AppDelegate类中使用基于单元格和基于视图的NSTableView。方法"tableView: objectValueForTableColumn: row:" and "tableView: viewForTableColumn: row:"都存在于此类中。表"tableView: viewForTableColumn: row:"正在接听电话。如果我正在评论"tableView: viewForTableColumn: row:"方法,则"tableView: objectValueForTableColumn: row:"正在调用基于单元格的表格。可能是什么问题?如何解决这个问题?

1 个答案:

答案 0 :(得分:2)

您需要将基于单元格的表格视图切换为基于视图,或者需要使用单独的委托。

委托实现的方法集合确定表视图是基于视图还是基于单元格。所以,你不能真正为两者使用相同的委托。

请注意,例如,无法设置以编程方式创建的表视图是基于视图还是基于单元。它完全由代表决定。好吧,似乎即使对于在IB中创建的表视图,可以设置它,委托仍然部分地确定表视图的类型。

另一方面,即使是基于视图的表视图也会调用-tableView:objectValueForTableColumn:row:,所以我不确定为什么在你的情况下没有调用它。也许当委托不提供任何单元格视图时,表视图就不会打扰。