只在reloadData完成后调用函数[英] Call function only after reloadData has finished

本文是小编为大家收集整理的关于只在reloadData完成后调用函数的处理方法,想解了只在reloadData完成后调用函数的问题怎么解决?只在reloadData完成后调用函数问题的解决办法?那么可以参考本文帮助大家快速定位并解决问题。

问题描述

我有一个 tableView 并且需要在重新加载 tableView 后执行一个功能.我怎么知道 reloadData 是否已经完成?假设我有填充tableView 的methodA,一旦[tableView1 reloadData] 完成,我想调用methodB.谁能帮我这个?我一直在寻找几个小时...谢谢!

- (void) methodA
{

    NSString *URLa = [NSString stringWithFormat:@"http://www.website.com/page.php?
    v1=%@&v2=%@&v3=%@",v1, v2, v3];

    NSURL *url = [NSURL URLa];

    NSURLRequest *request = [NSURLRequest requestWithURL:url];
    (void) [[NSURLConnection alloc] initWithRequest:request delegate:self];

    [tableView1 reloadData];

}

推荐答案

问题是你在启动URL请求后立即调用reloadData.这没有任何意义,因为此时请求尚未完成.

正确的方法是在使用来自 URL 请求的响应更新数据源之后,在 connectionDidFinishLoading 中调用 reloadData 和 methodB.此时您就知道行数是否为零,并且无需等待表格视图更新完成.

本文地址:https://www.itbaoku.cn/post/924621.html