如何在我的自定义单元类(NSTextFieldCell的子类)中为单元格获取objectValue?

时间:2012-09-20 06:49:16

标签: cocoa

我有一个基于单元格结构的自定义NSOutlineView。 我已经为outlineView挂了一个自定义单元格。 对于大纲视图中的每一行,我已为outlineview中的每一行挂钩了一个自定义数据模型对象。 我使用以下方法挂钩节点对象:

  • (NSInteger)outlineView:(NSOutlineView *)outlineView numberOfChildrenOfItem:(id)item
  • (id)outlineView:(NSOutlineView *)outlineView child:(NSInteger)index ofItem:(id)item
  • (id)outlineView:(NSOutlineView *)outlineView objectValueForTableColumn:(NSTableColumn *)theColumn byItem:(id)item

现在我需要访问Custom Cell Class的drawInteriorWithFrame::方法中的数据Model对象,以便相应地绘制它。

我尝试在自定义单元格类中使用[self objectValue],但它没有将我传递给ObjectValue的对象返回给我。

我的方法有什么问题吗?或者有什么方法可以解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

我不知道细胞的objectValue发生了什么。但处理此问题的一种方法是将属性或成员变量添加到Cell子类以保存对模型对象的引用。然后你可以在drawInteriorWithFrame中使用它:如果您不使用ARC,请务必在dealloc中使用引用。