我希望用户能够重新排序表格,并且能够通过滑动删除行,但我不想让删除按钮始终可见。
为了启用重新排序,我显然已经包含了处理编辑等的方法:
override func tableView(tableView: UITableView, canEditRowAtIndexPath indexPath: NSIndexPath) -> Bool {
return true
}
override func tableView(tableView: UITableView, canMoveRowAtIndexPath indexPath: NSIndexPath) -> Bool {
return true
}
override func tableView(tableView: UITableView, commitEditingStyle editingStyle: UITableViewCellEditingStyle, forRowAtIndexPath indexPath: NSIndexPath) {
tableView.beginUpdates()
deleteItemAtRow(indexPath.row)
tableView.deleteRowsAtIndexPaths([indexPath], withRowAnimation: UITableViewRowAnimation.Automatic)
tableView.endUpdates()
}
override func tableView(tableView: UITableView, moveRowAtIndexPath sourceIndexPath: NSIndexPath, toIndexPath destinationIndexPath: NSIndexPath) {
moveItemFromIndex(sourceIndexPath.row, toIndex: destinationIndexPath.row)
}
但我也必须插入
self.editing = true
在viewDidLoad中。但是,这使得小圆删除按钮始终可见(我只想使用滑动删除功能)。我可以用
摆脱小圆形按钮override func tableView(tableView: UITableView, editingStyleForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCellEditingStyle {
return UITableViewCellEditingStyle.None
}
但这也会阻止用户通过滑动进行删除。
所以我的问题是,我如何启用重新排序和滑动删除(无需单击编辑,它们应始终处于活动状态),但不能始终显示小圆删除按钮?