如何在调用UITableview委托在uiviewcontroller中委托方法之前调用NSURLConnection委托方法

问题描述:

我在调用UIViewController服务,并在同一视图中显示UITableView。我正在显示带有json数组的UITableView,这是我从服务器获取的。如何在调用UITableview委托在uiviewcontroller中委托方法之前调用NSURLConnection委托方法

我的问题是,UITableView代表方法在NSURLConnection委托方法之前调用。

我想在致电NSURLConnection委托方法后致电UITableView委托方法。

我该如何解决这个问题?

简单的答案是,NSURL操作完成后,使用重载方法如下只是重装表视图:

[yourTableView reloadData]; 

,每当你想刷新表数据或调用tableview delegate方法使用reloadData表视图的方法。

如果您在同一个UIViewController旁边删除NSURLConnection委托方法,则可以在请求完成后从此NSURLConnectionDelegateMethod刷新表格。

- (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response 
    { 
    //Code for handling the service response here 

    [yourTableView reloadData]; 
    } 
+1

谢谢...这解决了我的问题 –

+0

我会在NSURLConnection完成后立即设置yourTableView的委托,然后调用reloadData。 – diegotrevisan

+0

谢谢....我用你的答案解决了我的问题。 –

如果你只是想从服务器接收响应之后的UITableView委托调用,则只是把这个代码在viewDidLoad中

-(void)viewDidLoad{ 
    [super viewDidLoad] 
    tableView.delegate = nil; 
    tableView.dataSource = nil; 
} 

而且receving响应后,只是这样做

tableView.delegate = self; 
tableView.dataSource = self; 
[tableView reloadData]