iOS TableView在添加新单元格之间的延迟

时间:2017-03-01 02:44:00

标签: ios uitableview delay

我正在使用UITableView,我希望一次添加一个新项目,而不是在有多个新项目时一次添加所有项目。现在,我的代码是这样的:

for rowNum in 0...(counter-1) {

    let when = DispatchTime.now() + 1
    DispatchQueue.main.asyncAfter(deadline: when) {
    self.tableView.insertRows(at: [IndexPath(row: rowNum, section: lastSection)], with: .fade)
    }   
 }

但它不起作用。

1 个答案:

答案 0 :(得分:1)

已经有一段时间但也许我可以提供帮助。插入新行或节时,需要使用tableView.beginUpdates()和tableView.endUpdates()。此外,在这两个函数之间,行号和数组的计数应该相等。否则会抛出错误。试试这个:

let when = DispatchTime.now() + 1
DispatchQueue.main.asyncAfter(deadline: when) {
    self.tableView.beginUpdates()
    self.<yourArray>.append(<newElement>)
    self.tableView.insertRows(at: [IndexPath(row: self.<yourArray>.count - 1, 
                                             section: lastSection)], with: .fade)
    self.tableView.endUpdates()
}