我与将单元格插入表视图有点混乱。
当我调用 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()
苹果的文档