我有tableView
我使用Alamofire
发送并从服务器获取请求。
正如您在图片中看到的那样,在我的tableView
中,我在表格的标题中发送了多个请求,并在索引0,1发送了cell
。如果我在一个函数中发送请求,则响应时间太长,无法控制每个请求的错误。什么是处理这个问题的最佳方法?
感谢
答案 0 :(得分:0)
您应该创建一个请求。
因此,通过解析您的请求,您应将数据源设置为数组,因此每一行将从单个项目中获取数据 那个阵列。
然后,您将使用此数据源更新表格视图。
例如:
1)为数据源创建变量(在方法之外):
var source : [Something]
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 ...
}
答案 1 :(得分:0)
多个请求很好,只需根据每个请求的响应显示表格单元格或标题。
直到您没有收到针对该特定单元格或标题的任何请求设置高度为0的响应。