我是新来的可可如此道歉,如果这没有意义。强制NSBrowser重新加载
我使用的是NSBrowser
获得从Web服务的一些数据的搜索式的列视图。 NSURLConnection
结果异步返回。
我的问题是,浏览器正确调用其委托来填充列的应用程序启动的时候,但我不能让重装一次我已经得到的数据。
我试过reloadDataForRowIndexes
,noteHeightOfRowsWithIndexesChanged
,addColumn
,reloadColumn
和loadColumnZero
,但它们都没有触发浏览器调用numberOfRowsInColumn
的委托作为我希望(看到在启动时)。
我知道浏览器委托是好的,因为我可以看到它在启动时被调用。
是否有另一种方式要求浏览器刷新,还是我需要尝试另一种方法?
计划B将在另一个线程上触发urlConnection并阻止浏览器。我不热衷于阻止UI线程,因为我担心这会导致一个沙滩球。
C计划可能会推迟从笔尖文件浏览器加载,直到数据准备好了,但我也有类似的问题,下一个节点,除非我加载所有在期待早日节点列。
那么这相当大地减少了我的搜索半径!事实证明,我的本地浏览器引用没有像我期望的那样被Interface Builder设置,但它被传递给了委托方法。干杯。 – 2011-04-14 11:19:08
这是由在头文件中重命名IBOutlet引起的。我已经将NSBrowser链接到新名称,但没有删除旧链接。另外,这在构建警告中显示,但仅在干净重建时显示。 – 2011-04-14 11:28:31