我有一个包含3个部分的TableView,每个部分包含1行。启用编辑模式后,我希望用户能够在不更改每个部分中的行数(始终为1)的情况下重新排列部分。
开始
拖动
结束 - 我想避免的事情
我找到了一个有效的解决方案,但没有动画。如果我更新数据模型并在moveRowAtIndexPath
中重新加载tableView,那么tableView看起来应该是这样的......用实际reloadData()
和tableView begin
<替换endUpdates
会很好/ p>
func tableView(tableView: UITableView, moveRowAtIndexPath sourceIndexPath: NSIndexPath, toIndexPath destinationIndexPath: NSIndexPath) {
let movedProperty = list[sourceIndexPath.section]
list.removeAtIndex(sourceIndexPath.section)
list.insert(movedProperty, atIndex: destinationIndexPath.section)
tableView.reloadData()
}
func tableView(tableView: UITableView, targetIndexPathForMoveFromRowAtIndexPath sourceIndexPath: NSIndexPath, toProposedIndexPath proposedDestinationIndexPath: NSIndexPath) -> NSIndexPath {
return proposedDestinationIndexPath
}