2016-10-04 146 views
0

我有tableView和我使用Alamofire发送并从服务器获取请求。 你可以在图片中看到,在我的tableView我发送多个请求在表的标题和cell索引0,1。如果我在一个函数中发送我的请求,则得到响应的时间太长,无法控制每个请求的错误。处理这个问题的最好方法是什么?Alamofire多重请求

感谢

回答

0

您应该创建一个请求

因此,通过分析你的要求,你应该设置您的数据源到一个数组,所以每一行将从该阵列的单个项目获取数据

然后,您将使用此数据源更新您的表格视图。

例如:

1)创建数据源的可变(方法外):

​​

2)请求所有在单个请求中

Alamofire.request(_,_,_) 
.responseJSON { 
    // create a data source 
    // this request should be a merge of your three request stated in your question 
    // source can be set as [Something] for instance 
} 

3)在您的cellForRow代表方法你应该做这样的事情:

func tableView(_ tableView: UITableView, 
    cellForRowAt indexPath: IndexPath) -> UITableViewCell 
{ 
    let cell = tableView.dequeueReusableCell(... 
    dataForARow = self.source[indexPath.row] 
    cell.label.text = dataForARow["name"] //etc ... 
} 
0

多个请求是罚款只是显示你的表格单元格或标题基于每个请求的响应。

直到您没有收到针对该特定单元格或标题的任何请求集高度为0的响应。