扩展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中以编程方式完成的。
答案 0 :(得分:4)
6小时后,我明白了。
我需要更新NSTreeController缓存,这是通过rearrangeObjects
方法实现的。
所以我的问题的答案是:
[self.cloudDirectoryTreeController rearrangeObjects];