我有一个ViewController并添加了一个tableView。它有2个部分,每个部分分别加载2个自定义单元格。但是当我滑动删除任一部分中的某些行时,删除按钮随机出现在屏幕上的其他位置。调整tableView,CommitEditingStyle,canEditRowAtIndexPath.But的约束条件。问题仍然存在。
func tableView(_ tableView: UITableView, commit editingStyle: UITableViewCellEditingStyle, forRowAt indexPath: IndexPath) {
}
func tableView(_ tableView: UITableView, editActionsForRowAt indexPath: IndexPath) -> [UITableViewRowAction]? {
if ((indexPath as NSIndexPath).section == 1)
{
let complete = UITableViewRowAction(style: .default, title: "Complete".localized, handler: {[weak self](action, indexPath) -> Void in
if let theSelf = self {
theSelf.completeTask(indexPath)
}
})
complete.backgroundColor = StyleKit.blue10
return [complete]
}
else if ((indexPath as NSIndexPath).section == 2)
{
let reopen = UITableViewRowAction(style: .default, title: "Reopen".localized, handler: {[weak self](action, indexPath) -> Void in
if let theSelf = self {
theSelf.reopenTask(indexPath)
}
})
reopen.backgroundColor = StyleKit.blue10
return [reopen]
}
return []
}
添加了示例代码。