使用 NotificationCenter 为 table 视图中的标签设置值

Set value to label(s) in table view with NotificationCenter

我有一个带有自定义单元格的 table 视图。在单元格中,我有一个标签,用于计算该特定单元格中的按钮按下次数。

计数器是单独 class 的一部分:

class List {
    var name = ""
    var description = ""
    var counter: Int = 0

    init(name: String, description: String) {

        self.name = name
        self. description = description    
    } 
}         

var staticList: [List] =
        [ //Lots of names and descriptions.   
        ]

在 viewDidLoad 中,我这样做:

NotificationCenter.default.addObserver(self, selector: #selector(refreshLbl), name: NSNotification.Name(rawValue: "refresh"), object: nil)    

以及我试过的功能:

 @objc func refreshLbl(cell: MenuCell)
    {
        let indexPath = menuTableView.indexPath(for: cell)
       staticList[(indexPath?.row)!].counter = 0   
    } 
}    

因此,我的目标是在触发 func refreshLbl 时将所有 counterLabel 中的计数器设置为 0。

只需运行这个循环并将计数器的值更新为零:

 for list in staticList{
        list.counter = 0
    }

然后重新加载 table 视图:tableView.reloadData()