iOS Swift 2 - 删除tableView行时出错

时间:2015-11-23 01:19:32

标签: ios swift swift2 tableview

当我尝试从tableView中删除行时发生错误。 代码如下所示

override func tableView(tableView: UITableView, commitEditingStyle editingStyle: UITableViewCellEditingStyle, forRowAtIndexPath indexPath: NSIndexPath) {
 if editingStyle == UITableViewCellEditingStyle.Delete {

     tableView.deleteRowsAtIndexPaths([indexPath], withRowAnimation: .Fade)
     tableView.reloadData()

 }

}

从Xcode打印的错误如下:

  

无效更新:第0节中的行数无效。更新后的现有部分中包含的行数(1)必须等于更新前该部分中包含的行数(1),或者减去从该部分插入或删除的行数(插入0,删除1),加上或减去移入或移出该部分的行数(0移入,0移出)。

我已在此处阅读此错误,但我无法弄明白。  :(

提前致谢。

1 个答案:

答案 0 :(得分:3)

您从表中删除了该行,但首先需要从数据模型中删除相应的数据。例如,如果您的数据模型是一个数组,那么您可以在其上调用removeAtIndex来删除该行。您必须始终按此顺序进行操作:调整数据模型,调整表格视图。

no 此时需要重新加载数据;您可以省略该行。)