繁体   English   中英

InsertRowsAtIndexPaths错误迅速

[英]InsertRowsAtIndexPaths error Swift

我有一个uitableview ,我尝试通过insertRowsAtIndexPaths函数附加它。 如果我只是简单地将数据添加到数据源数组中,则uitableview很好地附加,但是让我很难通过上述功能将其插入。

这是我的代码

    func insertData(){

// appending arrays
    answersdict.append(answersmain[answertitle1]![0]) // count 1
    resultanswers2d.append(carsmain[answertitle1]!) // count 3
    self.tableView.reloadData()

// inserting rows

    self.tableView.beginUpdates()

    let insertedIndexPathRange = 0..<carsmain[answertitle1]!.count + 1 // total count 4
    var insertedIndexPaths = insertedIndexPathRange.map { NSIndexPath(forRow: $0, inSection: 1) }

    self.tableView.insertRowsAtIndexPaths(insertedIndexPaths, withRowAnimation: .Fade)
    self.tableView.endUpdates()

我的数据源计数为2(因此第1节存在)和numberOfRows等于resultanswers2d[section].count + 1等于4

所以我试图将4行插入到已附加的数组中,该数组在该节中具有4个可能的行,但是我不断收到类似

更新(4)之后,现有节中包含的行数必须等于更新(4)之前该节中包含的行数,加上或减去插入的单元格(已插入4个,已删除0个)

或者如果我努力

malloc_error

被困。 需要任何见解。 谢谢。

删除该行以重新加载表格。

insertRowsAtIndexPaths更新表。

插入次数以及数据源和表中的位置必须匹配。

只是不要调用self.tableView.reloadData() beginUpdate和endUpdate部分应足够。

更新:另外,请记住也将新部分插入 beginUpdate endUpdate块中。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM