我从服务器加载了一部分数据,并将其显示在UITableView中。当用户将tableView滚动到tableView的底部(最后一个单元格)时,我将加载下一部分数据,并将其显示在tableView的新单元格中(添加新的单元格)。

我的目标是在从服务器加载数据时在底部的单元活动指示器中显示。是否有任何标准的美丽优雅的实现方式?我搜索了很多,但没有找到答案。

非常感谢您的回答!

最佳答案

我将BOOL isLoadingData保留在数据模型中,以跟踪何时加载数据。我的tableViewController通过KVO观察此属性并更新tableView。我使用以下方法显示活动指示器。


tableView:viewForFooterInSection:中,如果isLoadingData = YES返回一个包含UIActivityIndicatorViewUILabel表示正在加载数据的视图。否则返回nil
如果是isLoadingData = YES,则在numberOfSectionsInTableView:中将其他部分添加到计数中,并在1中为此部分返回tableView:numberOfRowsInSection:。在tableView:cellForRowAtIndexPath中,返回一个包含一个UIActivityIndicatorViewUILabel的“正在加载”单元格。

10-07 12:59
查看更多