swift 插入带有动画效果的行

swift insert row with animation effect

在我的应用程序的初稿中,我用静态数组填充了 NSTableView。 我有一个 NSButton,它插入一个新行,动画效果如下:

tableView.beginUpdates()
tableView.insertRows(at: IndexSet(integer: tableview.numberOfRows), withAnimation: .effectFade)
tableView.endUpdates()

此时的简短问题: 我需要 begin-/endUpdates() 命令吗? 我现在看到了是否使用此代码的区别。

主要问题:

现在是我的第二稿:

现在我从 Core Data 获取 TableView 的数据。 如果我单击 NSButton(插入新行),我会做一些不同的事情:我创建一个新记录,将其保存到核心数据中,再次获取所有数据并重新加载我的 TableView。

这很好用,但我不能在我的第二稿中使用这行了。

tableView.insertRows(at: IndexSet(integer: tableview.numberOfRows), withAnimation: .effectFade)

有人知道我怎样才能再次使用这个 "beautiful" 动画和核心数据吗?

小问题:单个insert/delete/move操作不需要beginUpdates() / endUpdates(),只有多个同时操作才需要。

主要问题reloadData()不显示任何动画。而不是 ...再次获取所有数据 重新加载我的 TableView 使用 insertRows(at 在 table 视图中插入对象.它会更新显示动画的 table 视图。