UITableView在表格中滑动一行时进入编辑模式。这是你的
“取消选择”回调
您可以在进入模式时备份您选择的行并在退出时恢复:
class ViewController: UITableViewController {
var indexPathsForSelectedRows: [IndexPath]?
override func setEditing(_ editing: Bool, animated: Bool) {
if editing {
indexPathsForSelectedRows = tableView.indexPathsForSelectedRows
} else {
indexPathsForSelectedRows?.forEach { tableView.selectRow(at: $0, animated: false, scrollPosition: .none) }
}
super.setEditing(editing, animated: animated)
}
}
另请注意,如果您在编辑期间重新排列/删除/插入行,则需要相应地更新存储的indexPathsForSelectedRows以便恢复正确的索引路径。