我有一个UITableView,其中设置了三个部分,这些部分按预期工作。
轻按一个按钮时,一次将在0和1区域或1和2区域之间移动多个单元。这一切都很好,但是默认动画对我来说太快了。是否可以定义自定义动画或完全删除默认动画以...
tableView.moveRow(at: IndexPath(row: 0, section: 0), to: IndexPath(row: 0, section: 1))
我尝试将
tableView.insertRows
和tableView.deleteRows
的动画设置为.none
作为替代方法,但是即使那样,仍会发生默认动画,其中行彼此折叠并消失。提前致谢!
最佳答案
使用自定义动画实现自定义方法
iOS中的默认动画是使用委托方法和枚举值的组合触发的。动画被烘焙到UITableView组件中。要实现自己的自定义动画,您需要定义自己的方法来处理CRUD操作,并根据时序需要重写drawRect方法以仔细实现动画。当然,您还需要处理自己的删除和数据源同步。
考虑以下
从哲学上讲,通过偏离标准时间,您将摆脱此操作的标准化iOS体验。这样,您的用户可能会感觉到您的应用程序性能较低。
关于ios - tableView.moveRow的自定义动画(在:至:),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44997116/