插入行后的UITableView,更新自定义标题的标签

时间:2017-04-21 18:11:58

标签: ios swift uitableview

我想在插入一行后更新自定义标题的标签:

self.billTableView.beginUpdates()
self.billTableView.insertRows(at: [IndexPath(row: self.data[row].count - 1, section: row)], with: .automatic)
self.billTableView.endUpdates()

didEndEditingRowAt委托中,我获得了索引路径的标题并更改了标签文本。但是当我插入一行时标签不会更新。

func tableView(_ tableView: UITableView, didEndEditingRowAt indexPath: IndexPath?) {

    let header = tableView.headerView(forSection: (indexPath?.section)!) as! TableSectionHeader
    header.lblTotal.text = "New Total"
}

如何检索部分的标题标签并更新它?

1 个答案:

答案 0 :(得分:0)

当你插入一行时,你需要将一个部分传递给索引路径,所以实际上你得到了这个部分。

self.billTableView.insertRows(at: [IndexPath(row: self.data[row].count - 1, section: row)], with: .automatic)
let header = tableView.headerView(forSection: row) as! TableSectionHeader
header.lblTotal.text = "New Total"

附注:单个插入操作不需要begin- /endUpdates()