调用reloadData时平滑UITableView滚动

时间:2014-07-11 07:53:46

标签: ios objective-c uitableview

我使用一种方法在用户滚动UITableView结束后从网上获取新项目。

当用户点击列表的末尾时,我在里面调用我的提取类:

dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0)

避免ui冻结并获取,从Serve r。

解析新项目

这里没有延迟,但是当我尝试在我的表中重新加载数据并将项目添加到

列表(reladData)有一个小的打嗝是滚动。它约为0.4或0.5秒,也是

滚动将在此期间冻结。

我甚至试图使用这种方法:

dispatch_async(dispatch_get_main_queue(), ^(void)
                                       {
    [self.tableView performSelectorOnMainThread:@selector(reloadData) withObject:nil waitUntilDone:YES]

而不是正常的reloadData,但仍然滞后。

无论如何都要避免这种情况,或者我应该创建消息/进度动画或其他东西

否则在此滞后期间通知用户如“请稍候”弹出?

0 个答案:

没有答案