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