如何检测UITableView的加载结束?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (12)

我想在加载完成时更改表格的偏移量,并且偏移量取决于表格中加载的单元格的数量。

是否有任何方式知道什么时候uitableview加载完成?我在代表和数据源协议上都没有看到任何内容。

我无法使用数据源的计数,因为只能加载可见单元格。

提问于
用户回答回答于

lastRow可以是[tableView numberOfRowsInSection:0] - 1或((NSIndexPath *)[[tableView indexPathsForVisibleRows] lastObject])。row。所以代码将是:

-(void) tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath
{
    if([indexPath row] == ((NSIndexPath*)[[tableView indexPathsForVisibleRows] lastObject]).row){
        //end of loading
        //for example [activityIndicator stopAnimating];
    }
}

用户回答回答于

用这个解决方案,非常简单:

-(void) tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath
{
    if([indexPath row] == lastRow){
        //end of loading
        //for example [activityIndicator stopAnimating];
    }
}

扫码关注云+社区