对于基于单元格的 tableView,"tableView: viewForTableColumn: row:" 正在接听电话而不是 "tableView: objectValueForTableColumn: row:"
"tableView: viewForTableColumn: row:" is getting call instead of "tableView: objectValueForTableColumn: row:" for cell based tableView
我在 AppDelegate class 中同时使用基于单元格和基于视图的 NSTableView。这两种方法 "tableView: objectValueForTableColumn: row:" and "tableView: viewForTableColumn: row:"
都存在于此 class 中。对于 table "tableView: viewForTableColumn: row:"
都接到电话。如果我正在评论 "tableView: viewForTableColumn: row:"
方法,那么 "tableView: objectValueForTableColumn: row:"
正在调用基于单元格的 table。可能是什么问题?如何解决这个问题?
您需要将基于单元格的 table 视图切换为基于视图,或者您需要使用单独的委托。
委托实现的方法集部分决定了 table 视图实际上是基于视图还是基于单元格。所以,你不能真正对两者使用相同的委托。
请注意,例如,无法设置以编程方式创建的 table 视图是基于视图还是基于单元格。这完全由代表决定。好吧,似乎即使对于在 IB 中创建的 table 视图,可以设置它,委托仍然部分地确定 table 视图的类型。
另一方面,即使是基于视图的 table 视图也会调用 -tableView:objectValueForTableColumn:row:
,所以我不确定为什么在您的案例中没有调用它。也许当委托不提供任何单元格视图时,table 视图就不会打扰。
我在 AppDelegate class 中同时使用基于单元格和基于视图的 NSTableView。这两种方法 "tableView: objectValueForTableColumn: row:" and "tableView: viewForTableColumn: row:"
都存在于此 class 中。对于 table "tableView: viewForTableColumn: row:"
都接到电话。如果我正在评论 "tableView: viewForTableColumn: row:"
方法,那么 "tableView: objectValueForTableColumn: row:"
正在调用基于单元格的 table。可能是什么问题?如何解决这个问题?
您需要将基于单元格的 table 视图切换为基于视图,或者您需要使用单独的委托。
委托实现的方法集部分决定了 table 视图实际上是基于视图还是基于单元格。所以,你不能真正对两者使用相同的委托。
请注意,例如,无法设置以编程方式创建的 table 视图是基于视图还是基于单元格。这完全由代表决定。好吧,似乎即使对于在 IB 中创建的 table 视图,可以设置它,委托仍然部分地确定 table 视图的类型。
另一方面,即使是基于视图的 table 视图也会调用 -tableView:objectValueForTableColumn:row:
,所以我不确定为什么在您的案例中没有调用它。也许当委托不提供任何单元格视图时,table 视图就不会打扰。