OGeek|极客世界-中国程序员成长平台

标题: ios - tableView.moveRow 的自定义动画(在 : to:) [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-11 18:13
标题: ios - tableView.moveRow 的自定义动画(在 : to:)

我有一个 UITableView,它设置了三个部分,可以按预期工作。

点击按钮时,一次多个单元格将在第 0 和第 1 部分或第 1 和第 2 部分之间移动。这一切都很好,但是默认动画对我的需要来说太快了。是否可以定义自定义动画或完全删除默认动画...

tableView.moveRow(at: IndexPath(row: 0, section: 0), to: IndexPath(row: 0, section: 1))

我曾尝试使用 tableView.insertRowstableView.deleteRows 并将它们的动画设置为 .none 作为替代方案,但即便如此仍然是默认动画,其中行相互折叠并消失。

提前致谢!



Best Answer-推荐答案


使用自定义动画实现自定义方法

iOS 中的默认动画是使用委托(delegate)方法和枚举值的组合触发的。动画被烘焙到 UITableView 组件中。要实现您自己的自定义动画,您需要定义自己的方法来处理 CRUD 操作并重写 drawRect 方法以根据您的时间需求仔细实现您的动画。当然,您还需要处理自己的删除和数据源同步。

考虑以下

从哲学上讲,如果偏离标准时间安排,您将偏离此操作的标准化 iOS 体验。通过这样做,您的用户可能会感觉到您的应用程序性能较差。

关于ios - tableView.moveRow 的自定义动画(在 : to,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44997116/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (https://ogeek.cn/) Powered by Discuz! X3.4