Swift表格视图刷新错误
我得到这个错误: 这是我的代码: 我正在项目的tableView部分使用refresh。在刷新过程中,什么可能导致此错误 但在哪个阶段,它落在了我无法解决的那个部分的错误上 在本节中,我从web服务获取数据Swift表格视图刷新错误,swift,uitableview,Swift,Uitableview,我得到这个错误: 这是我的代码: 我正在项目的tableView部分使用refresh。在刷新过程中,什么可能导致此错误 但在哪个阶段,它落在了我无法解决的那个部分的错误上 在本节中,我从web服务获取数据 func-KonulariGetir(sirala:String) { var request=URLRequest(url:url(字符串):http://212.xxx.xxx.xxx:7001/IndirimiKovala/KonuGetir")!) request.httpMet
func-KonulariGetir(sirala:String)
{
var request=URLRequest(url:url(字符串):http://212.xxx.xxx.xxx:7001/IndirimiKovala/KonuGetir")!)
request.httpMethod=“POST”
让postString=“filter=“+sirala
request.httpBody=postString.data(使用:.utf8)
让task=URLSession.shared.dataTask(with:request){(data,response,error)在
如果错误!=nil
{
打印(“错误”)
}
如果让urlContent=data
{
做
{
让jsonResult=try JSONSerialization.jsonObject(带有:urlContent,options:JSONSerialization.ReadingOptions.mutableContainers)作为任意对象
如果让gelenDizi=jsonResult作为?NSArray
{
对于0中的i..我猜问题来自您尝试填充tableview的代码部分。因此,可能的解决方案可以是tableview(uTableView:UITableView,cellForRowAt indexPath:indexPath)委托方法检查arrayKonularData数组是否像这样为空
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell
{
let cell = tableView.dequeueReusableCell(withIdentifier: orderCell, for: indexPath)
if !arrayKonularData.isEmpty {
.....// Your code
}
return cell
}
另一个解决方案(在您的情况下,我认为这是正确的解决方案)添加了
func KonulariGetir(sirala:String)
并在完成方法中重新加载tableview请向问题中添加代码,而不是代码图片。由于控制台中的错误显示“索引超出范围”…此外:您没有将UIRefreshControl
添加为子视图。您使用的UITableView
上有一个refreshControl
属性。(不知道这是否是问题的一部分,但仍然值得解决)如果arrayKonularData
为空numberOfRows
返回0,并且根本没有调用cellForRow
,控制台会说这是一个超出范围的错误。是的,您是对的。因此问题不来自该部分。从所提供的代码部分很难找到导致此错误的原因
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell
{
let cell = tableView.dequeueReusableCell(withIdentifier: orderCell, for: indexPath)
if !arrayKonularData.isEmpty {
.....// Your code
}
return cell
}
func KonulariGetir(sirala:String)