展开OutlineViewItem时-

 (void) outlineViewItemDidExpand:(NSNotification *)notification


-,我能够将对象成功添加到TreeController(日志语句在层次结构的正确位置显示了新添加的对象),但是OutlineView / UI并未更新以反映该插入。

无济于事,我已经习惯了


[self.outlineView reloadItem:nil reloadChildren:YES]
[self.outlineView reloadData],甚至
[self.outlineView setHidden:YES]然后
[self.outlineView setHidden:NO]


尝试强制重新加载结构。

所有这些都是在Objective-C中以编程方式完成的。

最佳答案

6小时后,我明白了。

我需要更新NSTreeController缓存,这是通过rearrangeObjects方法实现的。

所以我的问题的答案是:

[self.cloudDirectoryTreeController rearrangeObjects];

10-08 05:23