我想知道这些之间的区别。 tableView
方法& UITableViewController
方法。
tableView.moveRow(at:, to:)
tableView(_ tableView: UITableView, moveRowAt sourceIndexPath: IndexPath, to destinationIndexPath: IndexPath)
想知道差异以及何时使用它们,因为我使用了tableView.moveRow(at: SourceIndexPath, to: DestinationIndexPath)
内的tableView(tableView:, moveRowAt:, to:)
。但是App崩溃了。
非常感谢帮助。
崩溃错误:
由于未捕获的异常终止应用程序' NSInternalInconsistencyException',原因:'无效更新:第0部分中的行数无效。更新后现有部分中包含的行数(2)必须等于更新前的该部分中包含的行数(3),加上或减去从该部分插入或删除的行数(0插入,0删除)和加或减移入的行数或超出该部分(1移入,0移出)。
答案 0 :(得分:0)
tableView(_ tableView: UITableView, moveRowAt sourceIndexPath: IndexPath, to destinationIndexPath: IndexPath)
这是表视图的委托方法。它要求视图控制器任务执行。
同时
tableView.moveRow(at:, to:)
是以编程方式移动行的方法。您在委托方法中调用tableView.moveRow(at:, to:)
,导致在完成一次更改之前进行下一次更改。