UITableView在heightForRowAtIndexPath和cellForRowAtIndexPath之间挂起5秒

时间:2012-08-02 19:36:17

标签: ios uitableview reloaddata

我这里有一种非常奇怪的行为。我正在使用RSSKit下载和解析XML-Feed。到现在为止还挺好。这发生在几毫秒内。完成后,我在TableView上调用reloadData。此后,numberOfRowsInSection和heightForRowAtIndexPath立即进入。然后大约5秒钟没有任何事情发生。只有在那5秒之后才会调用cellForRowAtIndexPath。

它变得更加奇怪!在此期间,当没有任何事情发生时,tableView已经完全响应。当与UI交互时,会立即调用cellForRowAtIndexPath。

在reloadData没有改变任何内容之后,直接在tableview上放置setNeedsDisplay。我认为这个问题似乎与iOS的Window-Server有关?

我现在看来它的一个简短摘要:在手机什么都不做的情况下,UI的更新过程似乎没有反应约5秒。

任何人都知道如何跟踪原因?

1 个答案:

答案 0 :(得分:1)

我的失败! dispatch_sync(dispatch_get_main_queue()...回到主线程,一切正常......