NSTreeNode parentNode方法永远不会返回nil

时间:2010-08-30 22:17:30

标签: cocoa treenode

我正在使用NSOutlineView和NSTreeController的绑定。我试图通过使用NSTreeNode的-parentNode方法确定特定节点的父节点,但是该方法永远不会返回nil,如文档中所示。相反,我必须这样做,以使事情有效。内省是一种黑客攻击。有什么建议?感谢。

NSTreeNode *parentNode = [[[treeController selectedNodes] objectAtIndex:0] parentNode];
LXNode *realParentNode = [parentNode representedObject];

if (parentNode && [realParentNode isKindOfClass:[LXNode class]])
{
    //The parent exists

}
else
{
   //Parent does not exist.
}

在调试器中显示parentNode如下

> parentNode           0x001a1e50 
> NSObject             {...} 
> _childNodesProxy     0x0 
> _representedObject   0x10019f500 
> _observationInfo     0x0 
> _reserved2           0x0 
> _childNodes          0x1020b6d10 
> _parentNode          0x0 
> _NSTreeNodeFlags     {...}

0 个答案:

没有答案