2

我以编程方式创建了一个 NSTableView 并添加了一个列(NSTableColumn 的一个实例)。如何设置此列的名称(默认为“字段”)?在 NSTableColumn 有一个带有签名的方法

- (void)setHeaderCell:(NSCell *)aCell

但是“[t]his 方法仅对基于单元格的表格视图有效”,并且我正在使用基于视图的表格视图。

NSTableView 本身包含一个 NSTableHeaderView 的实例,其中包含一个 NSTableHeaderCell 的实例。NSTableHeaderCell 是 NSTextFieldCell 的子类,看起来不错,因为它有一个 setString 方法。但我无法访问 NSTableHeaderCell!那么如何设置列名呢?我认为这样做是微不足道的:毕竟,能够在表格视图中设置列名几乎是能够使用表格视图做的最重要的事情,但是经过数小时的搜索我还没有找到关于如何做到这一点的单一线索。

4

1 回答 1

1

我认为您应该继续使用-[NSTableColumn headerCell]. NSTableColumn.h 头文件中不存在类引用中的注释,即使这些与表视图相关的头文件有关于基于视图的表视图的非常详尽的文档。NSCell此外,尽管 Apple在 10.10 中已普遍弃用并且-[NSTableColumn dataCell]已被弃用,-headerCell但并非如此。这表明苹果没有替代品。

于 2014-08-15T04:53:56.517 回答