如何知道 UITableView 已完成将数据加载到单元格中? [复制]

Posted

技术标签:

【中文标题】如何知道 UITableView 已完成将数据加载到单元格中? [复制]【英文标题】:How to know UITableView has completed loading data into cells? [duplicate] 【发布时间】:2014-07-03 10:36:11 【问题描述】:

我创建了一个简单的表视图,其中设置了 delegatedatasource。 我只想知道表格是否已经加载了单元格中的所有数据,以便我可以在此之后进行其他活动,例如遮罩和动画。

是的,数据正在填充来自网络服务的单元格。

【问题讨论】:

我猜不可能,如果您的表格在 viewDidLoad 中加载,那么在 viewWillAppear 或 viewDidAppear 中启动您的动画 在大多数情况下,加载是在主线程上完成的。因此,如果你有一个像[tableView reloadData] 这样的调用,当方法返回时,加载就完成了。 【参考方案1】:

我想你不知道,什么时候所有的表格单元都加载了数据。这也取决于连接性。你可以试试这两种可能——

1.. 您可以通过设置具有特定延迟的 NSTimer 来执行您的任务。在此之前,您可以旋转微调器。案例的问题是,如果你设置大的延迟值,用户使用你的应用程序会很烦人。

2.. 您可以使用自定义 Tableviewcells。有了这个,您可以使用延迟加载,这将帮助您找到特定单元格是否已加载其数据。

【讨论】:

【参考方案2】:

流程中最慢的部分是从 Web 服务加载数据。使用完成处理程序处理所有 Web 服务调用。表视图重新加载速度非常快,从您收到来自 Web 服务调用的数据开始,您应该不会看到任何延迟。

如果您使用 Coredata 和 NSFetchedResultsController,那么您可以使用 controllerDidChangeContent 触发操作。

【讨论】:

以上是关于如何知道 UITableView 已完成将数据加载到单元格中? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

UITableView 加载完成后可以调用函数吗?

当我的应用程序通过我的 UITabBar 完成启动时,如何将加载的数据传递给 UITableView?

在我滚动之前,数据不会加载到 UITableView 中

如何以编程方式知道 Adob​​e Reader 已完成文件加载?

将 Json 解析为 UITableview

如何确定 UIView 是不是已加载 [重复]