NSOutlineView viewForTableColumn:未记录的非继承方法

时间:2013-05-13 21:21:40

标签: objective-c macos nsoutlineview

我在outlineView:viewForTableColumn:item:代表中看到了referenceNSOutlineView。我有一个Mac应用程序,它被苹果代码使用和调用(我可以在方法中放置一个断点并在堆栈中看到它)。但我无法在任何地方找到相关文档。它不在Apple NSOutlineViewDelegateNSOutlineViewDataSource的文档中。但是,在我的项目中的NSOutlineView.h中(在AppKit框架的标题中),上面的注释引用了tableView:viewForTableColumn:row:中的NSTableViewDelegate

为什么这种方法(不是从NSTableView继承,因为它的签名与tableView:viewForTableColumn:row:不同)没有记录?任何人都可以澄清或发布详细信息吗?

1 个答案:

答案 0 :(得分:0)

NSOutlineViewNSTableView的子类。 NSTableView的所有文档也适用于NSOutlineView

您需要阅读所有超类的文档,以了解可以向NSOutlineView发送的方法。您还需要阅读适用于NSOutlineView及其所有超类的所有类别和协议的文档。

如果所有内容都记录在一个页面中,那么它将是几百兆字节的文本。您可以向NSOutlineView发送数以万计的有效邮件,主要是NSObject上添加的类别。

例如,frame页面中记录了NSView方法。 initWithCoder:页面中记录了NSCoding protocol方法。您需要了解这些方法,因为frame是更改大纲视图大小的唯一方法,initWithCoder:是在从xib文件创建大纲视图时将使用的构造函数 - 所以,如果你创建一个子类,那么你必须覆盖它。

使用命令单击和/或选择 - 单击方法名称以查找文档中的位置。另请注意,NSTableView上的某些内容不适用于NSOutlineView。我不确定viewForTableColumn是否是其中之一。