插入新行时更新表视图编号

时间:2016-09-22 12:00:39

标签: ios uitableview

我有一个简单的表格视图,其中单元格有一个数字标签,它们根据行号进行编号。这一切都运行正常,直到我尝试在顶部插入新行

我需要一种方法来更新下面的所有单元格,以便编号正确。重新加载tableview,但它会切断行插入动画。有人知道解决方案吗?

谢谢!

3 个答案:

答案 0 :(得分:0)

如果正确设置了cellForRowAt索引函数,其中每个标签号都是从indexpath.row派生的,那么之后插入就会调用

tableView.reloadData()

答案 1 :(得分:0)

您可能需要使用此解决方案 Swift 3.0

CATransaction.begin()
tableView.beginUpdates()

CATransaction.setCompletionBlock { () -> Void in
    // this is supposed to be done after insertion animation    
    self.tableView.reloadSections(IndexSet([0]), with: UITableViewRowAnimation.automatic)
}
self.tableView.insertRows(at: [IndexPath(row: 0, section: 0)], with: UITableViewRowAnimation.automatic)

tableView.endUpdates()
CATransaction.commit()

答案 2 :(得分:0)

在行插入完成后重新加载您的表,因为下面的代码可能会有所帮助:

[CATransaction begin];

[tableView beginUpdates];


[CATransaction setCompletionBlock: ^{

     //Reload your tableView here

}];

[tableView insertRowsAtIndexPaths: indexPaths
                 withRowAnimation: UITableViewRowAnimationAutomatic];


[tableView endUpdates];

[CATransaction commit];