我有一个UITableView实例tableView
,它显示来自服务器的数据。
tableView
将不得不等待,直到接收到数据,然后获得对其reloadData
方法的调用。一切都很好,效果很好。
现在我有一个特殊的方法,我想在tableView完成创建第一组visibleCells
之后立即执行。对于这个例子,我将调用方法performFancyActionOnVisibleCells
。然而,似乎reloadData操作是异步的,所以我不能只做
[tableView reloadData];
[self performFancyActionOnVisibleCells];
因为当第二行执行时,visibleCells仍然是空的,所以我必须等待一段时间才能调用它。这就引出了我的问题。
据我所知,没有像tableView:didFinishReloadingData
这样的委托方法。但是,如果我想在reloadData
已经完成更新visibleCells
属性的情况下调用performFancyActionOnVisibleCells
,那会在哪里呢?
干杯,
EP。
要直接回答您的问题,我不知道您要查找的内容有任何委托回调。
但是,reloadData
将在每个可视行上调用[tableView cellForRowAtIndexPath]
,这样您就可以在该方法的底部进行调用。
我不认为[tableView cellForRowAtIndexPath]
会为表中的每个单元格调用,但会在单元格可见之前(例如,滚动时(根据需要由UIKit调用。
Damien听起来不错,但我认为你应该考虑一下你的策略。。。用户可能不希望弹出某些内容(在随机时间(。我认为应该先显示单元格,然后填充它们。使用进度指示器,直到数据到达。然后,当数据到达时,将其绘制到单元格中,然后可以运行fancyActionMethod。我希望这能有所帮助!