我有一个窗口,其中包含通过Interface Builder创建的NSCollectionView。有一个NSArrayController绑定到CoreData后备存储,它在启动时通过触发异步请求来填充。 NSCollectionView与NSArrayController等的绑定似乎都已到位;但是,窗口显示并且是空白的,直到单击窗口,调整大小等以强制重绘窗口。
以下是我尝试过的一些没有任何明显变化的事情。 (这些在NSWindowController类中)
1)使用KVO监控CoreData提取的完成时间。在这一点上,我尝试了以下任何一项:
[collectionView setNeedsDisplay:YES];
[[self window] setViewsNeedDisplay:YES];
[[self window] flushWindowIfNeeded];
2)添加了NSProgressIndicator,在启动时隐藏NSCollectionView,然后在加载完成时(再次通过监视KVO),我隐藏进度指示器并显示集合视图。
任何人都有关于我在这里做错的提示/线索吗?
似乎把事情搞砸了。
答案 0 :(得分:0)
感谢朋友在Twitter上看到了这个链接,我有一个解决方案。一旦我的KVO触发添加呼叫:
[arrayController fetch:self];
似乎把事情搞砸了。