【发布时间】:2018-07-02 12:45:33
【问题描述】:
在我的 NSOutlineView 上调用 reloadItem() 时,项目似乎没有更新。 ReloadData() 可以很好地更新它们。与 rowForItem() 后跟 reloadDataForRowIndexes() 一样。
通过调试,我发现在 ReloadItem() 之后永远不会调用 viewForTableColumn()。这似乎很奇怪,为什么会有这个功能呢?
那么我为什么不直接使用你所说的 rowForItem() 和 reloadDataForRowIndexes()。因为如果项目的 isGroupItem 返回 true,那么 reloadDataForRowIndexes 什么也不做。我想我在某处读到这是因为 groupItems 没有列或其他东西?
因此,如果不调用 reloadData(),我无法更新 NSOutlineView 中的 groupItem 行。这会阻止我使用任何插入和删除动画...而且我想要动画。
有没有人找到使用 reloadItem 更新 groupItem 行的方法???或任何其他不需要重新加载整个大纲视图的方式?
最好的,
加文
【问题讨论】:
-
哦,我正在使用 swift & cocoa 以防万一。 NSOutlineView 也是基于视图的
标签: nsoutlineview