我有一个UITableView,其中设置了三个部分,按预期工作。
当点击一个按钮时,一次有多个单元格将在0和1之间或1和2之间移动。这一切都可以正常工作,但是默认动画对我的需求来说太快了。是否可以定义自定义动画或完全删除默认动画...
tableView.moveRow(at: IndexPath(row: 0, section: 0), to: IndexPath(row: 0, section: 1))
我尝试将tableView.insertRows
和tableView.deleteRows
的动画设置为.none
作为替代方案,但即使这样,仍然会发生默认动画,其中行会在每个行上方折叠其他的和消失的。
提前致谢!
答案 0 :(得分:0)
iOS中的默认动画是使用委托方法和枚举值的组合触发的。动画被烘焙到UITableView组件中。要实现自己的自定义动画,您需要定义自己的方法来处理CRUD操作,并根据您的时间需要覆盖drawRect方法以仔细实现动画。当然,您还需要处理自己的删除和数据源同步。
在哲学上,通过偏离标准时间,您将远离标准化的iOS体验来完成此操作。通过这样做,您的用户可能会感觉您的应用程序性能较差。