将单元格插入表视图后的方法调用



我与将单元格插入表视图有点混乱。

当我调用 tableView.insertRows(at: [indexPath], with: .left) tableView之后不立即更新时,内部称为函数。我认为这是一些相关的代表和数据源方法,但是哪些方法?

另外,我已经看到有些人用tableView.beginUpdates()tableView.endUpdates()致电insertRows。如果没有这两种方法发生更新,我们为什么需要执行此操作?

numberOfRows&&cellForRowAt是在插入时调用的,您需要开始&结束更新,以防止随后对numberOfrows的调用,以防您有插入/删除的重量呼叫,以避免添加/删除

之后更新之前的行/部分等例外情况。

现在建议使用

https://developer.apple.com/documentation/uikit/uitableview/2887515-performbatchupdates

内部

https://developer.apple.com/documentation/uikit/uitableview/1614908-beginupdates

tableView datasource方法将被调用,开始一系列插入,删除或选择表视图的行和部分的方法调用,您需要调用 beginUpdates(),然后调用 endUpdates()

苹果的文档

最新更新