UITableView 删除动画无法正常工作

Posted

技术标签:

【中文标题】UITableView 删除动画无法正常工作【英文标题】:UITableView's deleting animation does not work properly 【发布时间】:2020-03-26 04:08:06 【问题描述】:

当我尝试删除 UITableview 中的一行时,列表向上移动 2 行,动画行为也很奇怪,因为您可以看到 2 个“Water:11”单元格出现(向下移动)......这是怎么回事?我在 Xcode 9.4.1 版本中使用 swift,这是我的删除代码:

override func tableView(_ tableView: UITableView, editActionsForRowAt indexPath: IndexPath) -> [UITableViewRowAction]? 
     let deleteAction = UITableViewRowAction(style: .destructive, title: "DELETE")  (action, actionIndexPath) in
         tableView.beginUpdates()
         tableView.deleteRows(at: [indexPath], with: .automatic)
         Results.remove(at: indexPath.row)
         tableView.endUpdates()
     
     return [deleteAction]

a GIF that shows what's going on

【问题讨论】:

是的,它解决了我的问题!非常感谢! 【参考方案1】:

当 tableview 没有正确获得行高时,就会出现这种问题。要解决这个问题,您只需要给出估计的行高。谢谢

【讨论】:

以上是关于UITableView 删除动画无法正常工作的主要内容,如果未能解决你的问题,请参考以下文章

UITableView 滑动删除在 iOS8 上无法正常工作

Swift 春季动画在 UITableViewCell 上无法正常工作

UITableView 强制 sectionIndex 更新而不调用 reloadData

UITableView 单元格折叠动画看起来很糟糕

通过滑动删除行在表格视图中无法正常工作

UITableView - 带有背景图像的 UIRefreshControl